I have a panel in wich i load up to 10 label with the filenames of a specific directory...so far so good.
Then I use the mouse down event to determine the user choice, and change the correspondent label to a red font...so far so good....unless i tap on an empty label, then I get the error:
If control(selected).text<>"" then control(selected).fontcolor=cred
Error description:
Variable selected was not assigned any value.
If i disable the "check unassigned variables" option I get a NullReference error!!!
I know it wasn't, because the label is empty, but should the condition return false and do nothing?
Anyway for the time being i first load all labels with a "." and the test to see if its diferent...That works but the dots are
Ugly!
Update: Replaced the "." with a space and it works...I'll stick with it!!
No i was not using the linklabel, as i worked around that with the mouse event...
My logical was:
if mouse down xy in area of label1 then
label1.fontcolor red
selected="label1"
else if....and so on
at the end I passed the labels text using Control(selected).text
as some of the labels wre not beeing populated their value remained "" and thus the error, worked around by first inserting a space in every label before populating....
I understand that you've worked round the problem now :sign0060:, but I've passed text to labels created at run-time with null text value and not experienced any problems so I think that there must be some other underlying problem in your code or installation
Try this and see if it works for you...
B4X:
Sub Globals
End Sub
Sub App_Start
AddForm("Form1","LABEL TESTER")
AddButton("Form1","ClickMe",50,50,100,20," CLICK ME")
AddLabel("Form1","TestLabel",50,100,100,20,"")
Form1.Show
End Sub
Sub ClickMe_Click
Selected="TestLabel"
Control(Selected).Text="Works for me!"
End Sub
Is it possible that you're using the variable 'Selected' somewhere else in your code??