CheckBoxGadget mit mehrzeiligem Text

Anfängerfragen zum Programmieren mit PureBasic.
Lord
Beiträge: 324
Registriert: 21.01.2008 19:11

CheckBoxGadget mit mehrzeiligem Text

Beitrag von Lord »

Nur so, als kleine Kuriosität am Rande:
Bei der Suche nach der Möglichkeit neben einem CheckBoxGadget einen mehrzeiligen Text zu plazieren ist mir eine Merkwürdigkeit aufgefallen:

Code: Alles auswählen

OpenWindow(1,10,10,100,100,"Hmmm...")

CheckBoxGadget(1, 10,10,80,20,"OK")
CheckBoxGadget(2, 10,30,80,20,"Hmm...",#ES_MULTILINE)

Repeat:Until WaitWindowEvent()=#PB_Event_CloseWindow
Durch das (nicht zulässige) Flag #ES_MULTILINE (= $000004) wird aus einem CheckBoxGadget ein Frame3DGadget. :shock:

Ach ja, die Lösung für mein Problem war:

Code: Alles auswählen

OpenWindow(1,10,10,100,100,"Hmmm...")
CheckBoxGadget(1, 10,10,80,20,"OK")
CheckBoxGadget(2, 10,30,80,20,"Hmm...",#ES_MULTILINE)
CheckBoxGadget(3, 10,50,80,40,"Hmm..."+Chr(13)+"OK")
SetWindowLong_(GadgetID(3),#GWL_STYLE,GetWindowLong_(GadgetID(3),#GWL_STYLE) | #BS_MULTILINE) 
Repeat:Until WaitWindowEvent()=#PB_Event_CloseWindow
Bild
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Das ist keine Kuriosität. Du hast nur zufällig eine Konstante übergeben die den gleichen Wert wie ein Button style hat.

Code: Alles auswählen

#ES_MULTILINE = #BS_GROUPBOX
Dazu solltest du auch noch wissen das Frame3D-, CheckBox- und OptionGadget alle auf einem Standard Button-Control basieren.

Code: Alles auswählen

#BS_GROUPBOX = Frame3DGadget
#BS_CHECKBOX = CheckBoxGadget
#BS_RADIOBUTTON = OptionGadget
Windows 10 Pro, 64-Bit / Outtakes | Derek
Lord
Beiträge: 324
Registriert: 21.01.2008 19:11

Beitrag von Lord »

Fluid Byte, danke für die Erläuterung.
Hatte mich halt nur darüber gewundert.
Bild
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

> Dazu solltest du auch noch wissen das Frame3D-, CheckBox- und OptionGadget alle auf einem Standard Button-Control basieren.
Aha, CheckBox- und OptionGadget konnte ich mir vorstellen, aber das auch
das Frame3dGadget dazugehört, wusste ich auch noch nicht.
Win11 x64 | PB 6.20
Antworten