Neues Thema -> neue Hürden,
ich möchte mit einem RadioButton meine Widgets auf dem Panel (Child) steuern.
Alles soll in einer Klasse zusammengefasst werden. Ich habe nun das Problem, dass
1. sehen die entstehenden Elemente komisch aus
2. geschieht alles additiv und nicht exklusiv
Die Idee verschiedene Panels zu benutzen habe ich erstmal verworfen (für mich zu schwierig), obwohl das ja sicher die beste Variante wäre.
(http://www.python-forum.de/topic-12484. ... s+attribut hier wurde eine Beispiel mittels Klassen dargestellt, aber das in eine Klasse zu packen, pack ich schon nicht)
CODE AUSGELAGERT: http://paste.pocoo.org/show/91582/
Edit by Gerold: Code ausgelagert
[gelöst] Radiobutton um Entrys zu steuern
also die Frage ist ja, ist der Weg generell erst einmal richtig??
Wenn ja, bräuchte ich doch nur noch die Entrys und Texte löschen, die zur vorherigen Buttonauswahl gehören, und dann die zur neuen Auswahl gehörenden einzufügen, oder?
Falls der Weg generell falsch ist (die GUI auf diese Art zu verändern, in welche Richtung müßte ich denken?? Doch verschiedene Panels erstellen, nur um einige wenige Entrys zu verändern??
Gruß Mathi
Wenn ja, bräuchte ich doch nur noch die Entrys und Texte löschen, die zur vorherigen Buttonauswahl gehören, und dann die zur neuen Auswahl gehörenden einzufügen, oder?
Falls der Weg generell falsch ist (die GUI auf diese Art zu verändern, in welche Richtung müßte ich denken?? Doch verschiedene Panels erstellen, nur um einige wenige Entrys zu verändern??
Gruß Mathi

Also ich würde es in Panels gruppieren und die Auswahl nicht über Radiobuttons machen, sondern über eines der "Book"-Controls.
- martin101986
- User
- Beiträge: 85
- Registriert: Montag 3. Dezember 2007, 19:15
- Wohnort: Steiermark, Österreich
Hallo,
deine Grafischen Komponenten werden so komisch dargestellt weil du beim Aufruf zur Erzeugung dieser nicht das Panel übergibst sondern den Frame selbst!
Daher befinden sich deine Komponenten auf deinen Frame.
Und ich würde wie BlackJack vorher gesagt hat in Panels unterteilen.
Grüße
Martin
deine Grafischen Komponenten werden so komisch dargestellt weil du beim Aufruf zur Erzeugung dieser nicht das Panel übergibst sondern den Frame selbst!
Daher befinden sich deine Komponenten auf deinen Frame.
Code: Alles auswählen
#richtig
def show_rb1(self, event):
"""
Eventhandler für die RadioButtons zeigt die entspr. Widgets an.
"""
#Hier muss ein Panel übergeben werden, dann werden die Komponenten auf dem Panel platziert
self.createEingabemaske1(wx.panel)
Grüße
Martin
Danke für Eure Antworten,
die Unterteilung in Panels stelle ich mir schwierig vor, da alle Widgets einen definierten Platz im Frame haben sollen?!?
Ich fürchte aber, ich habe einfach nur noch zu wenig Verständnis.
@BlackJack
Sind mit "Book"-Controls ->
wx.SingleChoiceDialog

oder eher wx.ComboBox

gemeint?? Ich denke ersteres, oder?
(Bilder aus www.wiki.wxpython.org)
Zur Vervollständigung:
o.g. Beispiel funktioniert mit:
die Unterteilung in Panels stelle ich mir schwierig vor, da alle Widgets einen definierten Platz im Frame haben sollen?!?
Ich fürchte aber, ich habe einfach nur noch zu wenig Verständnis.
@BlackJack
Sind mit "Book"-Controls ->
wx.SingleChoiceDialog

oder eher wx.ComboBox

gemeint?? Ich denke ersteres, oder?
(Bilder aus www.wiki.wxpython.org)
Zur Vervollständigung:
o.g. Beispiel funktioniert mit:
Code: Alles auswählen
.
.
self.panel=panel
.
.
.
def show_rb1(self, event):
"""
Eventhandler für die RadioButtons zeigt die entspr. Widgets an.
"""
self.createEingabemaske1(self.panel)
.
.
.
.
Mit "Book"-Controls meinte ich die gleichnamige Rubrik in der wxPython-Demo, also die Widgets deren Namen mit `book` enden. `Choicebook`, `Listbook`, `Notebook`, etc.