DO reagiert auf die Betätigung eines Buttons. Diese Funktion sollte nach form_do() aufgerufen werden (oder von der Service-Funktion des Fensterdialogs). Wenn einer der Einträge der Listbox mit einem Doppelklick ausgewählt wurde, liefert lbox_do() -1 zurück. Der Dialog sollte dann geschlossen, so als wäre der OK-Button betätigt worden.
lbox_do() erkennt Doppelklicks am gesetzten obersten Bit der Objektnummer <obj> (Objektnummer | 0x8000). Bei der zurückgelieferten Objektnummer <slct_obj> ist das oberste Bit in jedem Fall gelöscht.
Deklaration:
WORD lbox_do( LIST_BOX *box, WORD obj );
Aufruf:
slct_obj = lbox_do( box, obj );
Variable Belegung Bedeutung
Eingaben:
contrl[0] 172 lbox_do
contrl[1] 1 Einträge in intin
contrl[3] 1 Einträge in addrin
intin[0] obj Nummer des ausgewählten Objekts
addrin[0] box Zeiger auf die Listbox-Struktur
Ausgaben:
contrl[2] 1 Einträge in intout
contrl[4] 0 Einträge in addrout
intout[0] slct_obj Nummer des ausgewählten Objekts
oder -1, wenn ein Doppelklick auf
einen Eintrag erfolgte