[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Accessing proxy properties
[Thread Prev] | [Thread Next]
- Subject: Re: Accessing proxy properties
- From: Bruce Steers <bsteers4@xxxxxxxxx>
- Date: Sun, 22 Sep 2024 11:54:48 +0100
- To: user@xxxxxxxxxxxxxxxxxxxxxx
On Sun, 22 Sept 2024 at 11:43, Bruce Steers <bsteers4@xxxxxxxxx> wrote: > > > On Sun, 22 Sept 2024 at 09:28, BB <adamnt42@xxxxxxxxx> wrote: > >> >> On 22/9/24 4:20 pm, BB wrote: >> >> Maybe I'm being overly ambitious here. >> >> If $control.Proxy.Row < 0 Then Return >> >> $control is a custom control with a gridview in it, which is the proxy. >> >> That line above stops the IDE with the error "Unknown symbol 'row' in >> class 'Control' " >> >> but in the IDE I can see (i.e. debug) the $control Proxy property and see >> the actual Proxy as per the picture attached. >> >> Is the $control.Proxy.Row construct wrong? >> >> tia >> >> b >> >> >> AH nevermind. >> >> I can see now what I was trying cant work, because Proxy is a Control, >> not the actual object's class. The IDE must do some magic to see it as it >> is. >> >> Damn! I thought I'd found a neat way to get at the proxy's properties. >> >> I know the Proxy's job is only to duplicate mouse and keyboard events but >> I just thought, maybe.... >> >> Oh well, back to work. >> > It's not magic, it's just a trick ;) > > Just access it assigning the gridview class or use Object.class to use any > property. > Ie. > > Dim hGrid As GridView = $control.Proxy > Print hGrid.Row > > Or.. > > Dim hObject As Object = $control.Proxy > Print hObject.Row > > If the type could vary you could use Object.Type($control.Proxy) to see > exactly what it is. > > Respects > BruceS > I must say although technically incorrect there are many properties in gambas that are Control.class but Object.class would be much more useful. Window.Controls , Control.Proxy , etc if it was Window.Controls As Object[] and Control.Proxy As Object then it would make for some much simpler programming. But then again i guess it don't take much of a command to get over this. Public Sub ControlObject(Ctrl As Control) As Object Return Ctrl End Print ControlObject($control.Proxy).Row
Re: Accessing proxy properties | Fabien Bodard <gambas.fr@xxxxxxxxx> |
Accessing proxy properties | BB <adamnt42@xxxxxxxxx> |
Re: Accessing proxy properties | BB <adamnt42@xxxxxxxxx> |
Re: Accessing proxy properties | Bruce Steers <bsteers4@xxxxxxxxx> |