Seite 1 von 1

DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Di, 21. Okt 2008 17:14
von Manfred
Irgendwie stelle ich mich wieder recht lahm an. Was hat es mit Buttons in dem Falle auf sich? Kann ich dann extra Buttons am unteren Rand erzeugen? Vor allen Dingen wie hat so ein Array auszusehen?

Code: Alles auswählen

DCGETOPTIONS BUTTONS {"Test",60,22,{|| test() },}
Oder wie darf ich das verstehen? So wie oben klappt es nicht. Es kommt nach dem Aufruf zu einer Fehlermeldung.

Fehler Base/3
Parameter hat falschen Typ
Operation <[2]>:= <60>

Ich verstehe mal wieder nicht, was da falsch läuft. :binky:

Re: DCGETOPTIONS BUTTONS

Verfasst: Di, 21. Okt 2008 17:27
von Wolfgang Ciriack
Hallo Manfred,

aus Rogers Hilfe:
BUTTONS <aButtons> is an optional multi-dimensional array of
buttons to add to the bottom of the dialog box. Each button will
be added in sequence from left to right. Each sub-array is an
array of 5 elements defining the buttons.
also probiers mal mit

Code: Alles auswählen

DCGETOPTIONS BUTTONS { {"Test",60,22,{|| test() }} }

Re: DCGETOPTIONS BUTTONS

Verfasst: Di, 21. Okt 2008 17:31
von Manfred
Verflixt,

ich hatte die geschweiften Klammern doppelt gehabt, aber irgendwo einen Tippfehler. Dann habe ich es wieder geändert und aus Pennerei die Klammern vergessen.

Danke für den Schlag auf den Hinterkopf.

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 6:48
von Manfred
Wie komme ich eigentlich an die Buttons ran? Z.B. wenn ich sie disablen möchte.

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 9:33
von Bertram Hansen
Hallo Manfred,

ich habe das so gelöst.

Code: Alles auswählen

@ x,y DCPUSHBUTTON  CAPTION "Bla Bla"  OBJECT oMeinButton
Und dann kannst du über

Code: Alles auswählen

oMeinButton:Disable()
Ich hoffe, dass ich die Frage richtig verstanden habe.

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 9:36
von Manfred
jaja,
das geht aber dann nicht über DCGETOPTIONS....

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 10:59
von Tom
An die Buttons kommst Du nicht so einfach ran. Aber das Array für jeden Button kann auch etwas länger werden, und z.B. an Stelle 7 ist ein Codeblock erlaubt, der dem WHEN gleichkommt:

Code: Alles auswählen

{{'Hallo',70,20,{||MsgBox('Hallo')},NIL,<xButtonIcon>,<xButtonConfig>,{||.T.} // <-- hier //, 'Tooltiptext'}}

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 13:11
von Manfred
OK, aber der/die Button müssen doch irgendeinem Parent zugeordnet sein....

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 13:35
von Tom
Sind sie ja auch. Du findest sie in der Childlist des jeweiligen Dialogobjekts und am Ende der GetList. Du kannst ihnen nur keine Objektvariablen direkt zuweisen.

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 13:53
von Manfred
hm, das verstehe ich nicht. Wenn ich mit DCREAD GUI den PARENT zuordne und dann da später ein :childlist() aufrufe, dann gibt es dort nur
{XbpIWindow, DC_XbpStatusBar}
mehr nicht. Deinen Worten nach müßte da aber dann auch die PushButton Klasse drinstehen!?

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 14:00
von Tom
Hol Dir noch die Childlists der beiden. Ich meine, die Buttons würden in der Statusbar landen. Muss aber nicht.

Re: DCGETOPTIONS BUTTONS [ERLEDIGT]

Verfasst: Mo, 03. Jul 2017 14:40
von Rudolf
Hallo,
ich löse das indem ich ein einer Funktion eine separate Getlist mit den Buttons erstelle, diese mit READ SAVE HIDE EXIT beende und dann in der Hauptfunktion mit READ EVAL {||dc_mergegetlists(getlist,makemybuttons()} zusammenfüge. Der Vorteil ist dass damit alle Möglichkeiten der Buttons genutzt werden kann und ich Blöcke mit verschiedenen Buttons vordefinieren kann.
Grüße
Rudolf