Bekomme keinen Text ordentlich in meinen Boxsizer :-/

Plattformunabhängige GUIs mit wxWidgets.
Antworten
Stolzi
User
Beiträge: 155
Registriert: Mittwoch 18. August 2004, 15:44

Donnerstag 2. August 2007, 15:39

Das gibts ja nicht ;-) Was mach ich denn da falsch?
Hier ist ein lauffähiges Bsp: http://paste.pocoo.org/show/2160/
Wenn man
st = wx.StaticText(self, -1, "This example demonstrates the wx.CheckBox control.")
und
self.bs.Add(st)
auskommentiert passts. Ich wollte ja nur, dass der Text über dem Button steht. Was mach ich denn da falsch?

Danke
Stolzi
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Donnerstag 2. August 2007, 19:14

Stolzi hat geschrieben:Ich wollte ja nur, dass der Text über dem Button steht. Was mach ich denn da falsch?
Hallo Stolzi!

Du kannst und darfst Widgets nur innerhalb eines **Containers** anordnen. Du kannst nur unter Windows ein Widget über einen Nicht-Container anordnen. Aber auch da ist es nicht ratsam. Du musst dich nämlich dann auch selbst um die exakte Positionierung kümmern und das bei jedem Resize.

Widgets dürfen nebeneinander angeordnet werden:

Code: Alles auswählen

+---------------+----------------+
|               |                |
|   Button 1    |   Button 2     |
|               |                |
+---------------+----------------+
Sie dürfen sich aber nie überschneiden:

Code: Alles auswählen

+------------|--+--------------+
|            |  |              |
|   Button 1 |  | Button 2     |
|            |  |              |
+------------|--+--------------+
Du darfst Widgets **komplett** innerhalb eines Containers anordnen. Aber auch dort sollen sie sich wiederum nicht überschneiden, da du dir nie sicher sein kannst, welches der Widgets nach einem Neuzeichnen ober dem anderen liegt.

Wenn du mehr willst, dann musst du dich auf eine tiefere Ebene bewegen und dir selber ein Widget zeichnen.

Edit:

Ahhhh! Du meinst nicht übereinander, sondern zwischen dem Grid und dem Button. :roll:

Code: Alles auswählen

st = wx.StaticText(p, -1, "This example demonstrates the wx.CheckBox control.")
mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Stolzi
User
Beiträge: 155
Registriert: Mittwoch 18. August 2004, 15:44

Freitag 3. August 2007, 16:01

Manchmal kann man aber auch verbimmelt sein. Das "p" habe ich ungefähr 10mal überlesen... Danke dir. Und auch danke fü die Erklärung.
Antworten