It should work.You may try to put code in load method. If you need only for display purpose you may use property DisplayValue.
PUBLIC oform1
oform1=NEWOBJECT("form1")
oform1.Show
RETURN
**************************************************
*-- Form: form1
DEFINE CLASS form1 AS form
DoCreate = .T.
Caption = "Form1"
Name = "Form1"
ADD OBJECT combo1 AS combobox WITH ;
Height = 31, ;
Left = 65, ;
Style = 2, ;
Top = 58, ;
Width = 225, ;
Name = "Combo1"
PROCEDURE Load
CREATE CURSOR Temp (FldInt I,FldChr C(20), Fld3 C(20))
INSERT INTO Temp VALUES(1, [dsgf],[fjg])
INSERT INTO Temp VALUES(3, [sdfd],[xcb])
INSERT INTO Temp VALUES(2, [xcvx],[cvb])
INDEX ON FldInt TAG Alpha
INDEX ON FldChr TAG Bravo
INDEX ON Fld3 TAG Charlie
SET ORDER TO Bravo
ENDPROC
PROCEDURE combo1.Init
This.AddItem('Alpha')
This.AddItem('Bravo')
This.AddItem('Charlie')
This.AddItem('Delta')
This.AddItem('Echo')
This.AddItem('Foxtrot')
DO CASE
CASE UPPER(TAG()) = UPPER('Alpha')
THIS.Value = 'Alpha'
CASE UPPER(TAG()) = UPPER('Bravo')
THIS.Value = 'Bravo'
CASE UPPER(TAG()) = UPPER('Charlie')
THIS.Value = 'Charlie'
CASE UPPER(TAG()) = UPPER('Delta')
THIS.Value = 'Delta'
CASE UPPER(TAG()) = UPPER('Echo')
THIS.Value = 'Echo'
CASE UPPER(TAG()) = UPPER('Foxtrot')
THIS.Value = "Foxtrot"
ENDCASE
ENDPROC
ENDDEFINE
Good point ! I did not know TAG() returns a uppercase character string.
dni wrote:
Good point ! I did not know TAG() returns a uppercase character string.