[Gambas-user] SetProperty Virtual Object Dynamically

L Jumadi l.jumadi at ...626...
Tue Nov 25 14:33:04 CET 2008


> On samedi 22 novembre 2008, L Jumadi wrote:
>> On vendredi 21 novembre 2008, L Jumadi wrote:
>>  > I just want to know wheter gambas can set property inside a virtual
>>  > collection. For Example I try to set Rows.H of a Gridview, I try
>> command
>>  > like this:
>>  >
>>  > Object.SetProperty(Obj,"Rows.H",10)
>>  >
>>  > (Where Obj is a Gridview, and of course "Rows.H" usually a variable)
>>  >
>>  > It return error. Is there any other way to do it? I have trouble to
>>  > read property too (Dynamically), but someway gambas debugger can read
>>  > it properly (I think it should use to read it dynamically). Am I
>>  > missing something?
>>  >
>>  >You can't do that with Object.SetProperty. But the question is: why do
>>  > you use Object.SetProperty?
>>  >
>>  >You can use an Object reference:
>>  >
>>  >DIM hObject AS Object = Obj
>>  >hObject.Rows.H = 10
>>  >--
>>  >Benoit Minisini
>>
>> Of course I do that because actually Rows.H is a data in a database.
>> FYI: Right now I create a database driven application with gambas. So
>> I never use any of gambas form (Can you Imagine that?!) but can
>> display GUI like if we use a form. Everything driven by the data. From
>> the data my program create the form dynamically. So user (actually
>> it's me as programmer) can modify the property of an object just by
>> editting the data. So far it going well until i want to modify the
>> rows.h. May be I can intercept that with some other code, but in the
>> future if there is many virtual object like this I must code it one by
>> one. So if there any solution for this I can set other "maybe in the
>> future" virtual object.
>
> Then you can use the Eval() function:
>
> Dim hGridView As GridView
> Dim cValue As New Collection
> Dim sProp As String = "Row.H"
>
> cValue["This"] = hGridView
>
> Print Eval("This." & sProp, cValue)
> --
> Benoit Minisini

Ok, that's solve the Read property function, how about setproperty?
can I use Eval? Or may be there is another way, tks.




More information about the User mailing list