In the Xojo IDE Scripts Menu there are some new shortcuts you may find helpful. The items in the IDE Scripts menu under File >…
Comments closedAuthor: Norman Palardy
An interesting thread on the forums turned up something that more of us should consider when working in any cross-platform tool, Xojo included. What was discovered was perhaps…
Comments closedEarlier I posed the question about why these two similar bits of code do slightly different things: dim path1 as string = “””C:\users\ieuser\desktop\new folder””” path1 =…
Comments closedHere’s a riddle for you! Suppose you are in the habit of using “function chaining” like this to reduce your lines of code: path2 =…
Comments closedIntrospection is a very handy and useful part of the Xojo language.
You can use it to examine a lot of the objects that are in memory at runtime. You can access the properties in those objects, call methods on those objects and even create new instances (with some caveats here).
But there are limits to what you can do with it. You can’t use it to create things that do not exist at runtime because they’ve been stripped out when your app was built.
Comments closedIntrospection is a very handy and useful part of the Xojo language.
You can use Introspection to examine many of the objects that are in memory at runtime. You can access the properties in those objects, call methods on those objects and even create new instances- with some caveats of course.
Comments closedFrom time to time we see the issue raised where floating point values are not exact like we can write in the code editor or on paper. Usually the confusion or complaint is worded like “I can’t get my double value to be precise like in the string” or “It’s not the same as I get doing it by hand”.
Comments closedThe code editor tries to help you see what code groups together. For instance, it draws small lines between matching block beginning statements like IF, SELECT CASE and their closers (END, END IF or END SELCT):
Comments closedConsider the following code:
dim i64 as Int64 = 1234567 dim i32 as int32 = 7654321 i32 = Int32(i64) // cast i64 = Int64(i32) // cast i32 = Ctype(i64, Int32) // convert i64 = Ctype(i32, Int64) // convert
It all seems reasonable enough. Not useful, but seems reasonable. Only one problem. It won’t compile. Why not? The two casts to int32 and int64 will fail. Now why is that?
Comments closedBut it said DataAvailable…where is all my data?
I’ve seen this a few times and have made the mistake once or twice myself. You write some code with TCP sockets and rely on the DataAvailable event as if it means “all your data is here”.
But it’s not. So the code you wrote that parses the data into its components keels over because you only have part of what you were expecting to have. And so you ask: “Why isn’t all my data here”?
Comments closed