Seite 1 von 1

[gelöst] Radiobutton um Entrys zu steuern

Verfasst: Freitag 14. November 2008, 08:38
von mathi
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

Verfasst: Samstag 15. November 2008, 13:35
von mathi
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 :)

Verfasst: Samstag 15. November 2008, 15:19
von BlackJack
Also ich würde es in Panels gruppieren und die Auswahl nicht über Radiobuttons machen, sondern über eines der "Book"-Controls.

Verfasst: Samstag 15. November 2008, 15:34
von martin101986
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.

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) 

Und ich würde wie BlackJack vorher gesagt hat in Panels unterteilen.

Grüße
Martin

http://wiki.wxpython.org/AnotherTutorial?action=AttachFile&a

Verfasst: Sonntag 16. November 2008, 20:33
von mathi
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
Bild

oder eher wx.ComboBox
Bild



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) 
.
.
.
.

Verfasst: Sonntag 16. November 2008, 23:22
von BlackJack
Mit "Book"-Controls meinte ich die gleichnamige Rubrik in der wxPython-Demo, also die Widgets deren Namen mit `book` enden. `Choicebook`, `Listbook`, `Notebook`, etc.

Verfasst: Montag 17. November 2008, 08:16
von mathi
@BlackJack
aha, danke. Notebook gefällt mir ganz gut :-)

Verfasst: Dienstag 18. November 2008, 10:53
von mathi
(gelöscht wegen Dummheit)

mathi