Seite 1 von 1

Text in Combobox zentrieren

Verfasst: 25.06.2013 01:30
von SBond
Hi Leute,

kennt jemand von euch eine Möglichkeit, den Text in einer Combobox zu zentrieren? Ich werde einfach nicht fündig :(
Standardmäßig scheint es ja nicht möglich zu sein aber eventuell gibt es da eine API oder ähnliches wenn ich glück habe :D


lg
SBond

Re: Text in Combobox zentrieren

Verfasst: 25.06.2013 08:29
von Kiffi
ein leicht modifiziertes Beispiel von infratec aus dem englischen Forum:

Code: Alles auswählen

If OpenWindow(0, 0, 0, 270, 440, "Test ComboBoxGadget",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  
  ComboBoxGadget(0, 10, 10, 250, 20, #PB_ComboBox_Editable)

  ;--> Get the handle to the Edit control (child of the editable ComboBoxGadget)
  hComboEdit = FindWindowEx_(GadgetID(0), #Null, "Edit", #Null)
  SetWindowLongPtr_(hComboEdit, #GWL_STYLE, GetWindowLongPtr_(hComboEdit, #GWL_STYLE) | #ES_CENTER)
 
  AddGadgetItem(0, -1, "123")
  AddGadgetItem(0, -1, "456")
  AddGadgetItem(0, -1, "789")
  SetGadgetState(0,0)
  Repeat

  Until WaitWindowEvent() = #PB_Event_CloseWindow

EndIf

End
Grüße ... Kiffi

Re: Text in Combobox zentrieren

Verfasst: 25.06.2013 14:45
von Shardik
Leider funktioniert Kiffis Trick nicht mit Windows XP (wohl aber mit Windows 7), weil anscheinend dynamische Umformatierungen im Edit-SubControl einer ComboBox von Windows XP noch nicht unterstützt werden. Dies scheint ähnlich wie beim StringGadget zu sein, das erst ab Windows Vista die Umformatierung des Gadget-Inhalts während der Laufzeit unterstützt:
http://forum.purebasic.com/english/view ... 13&t=36853

Re: Text in Combobox zentrieren

Verfasst: 25.06.2013 22:20
von SBond
super, vielen Dank ^^