Fieldset?

Plattformunabhängige GUIs mit wxWidgets.
Antworten
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Montag 17. Dezember 2007, 09:00

Hallo mal wieder...

Gibt es bei wxPython soetwas wie "Fieldsets" um optisch strukturieren zu koennen?
Ich glaube mal soetwas gesehen zu haben, bin mir aber nicht mehr so sicher wo und ob es ueberhaupt wxPython war ... :oops:

Gruß

EDIT: Okay... es gibt den StaticBoxSizer... gibts noch mehr? Noch schoenere Loesungen?
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Donnerstag 20. Dezember 2007, 11:43

Hoi,
nkoehring hat geschrieben:Gibt es bei wxPython soetwas wie "Fieldsets" um optisch strukturieren zu koennen?
Was ist denn das? (ggf. Screenshot?) Was möchtest Du denn genau erreichen?

Gruß,
Christian
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Donnerstag 20. Dezember 2007, 12:41

nkoehring hat geschrieben:Noch schoenere Loesungen?
Hallo nkoehring!

Nicht schöner, aber flexibler und umständlicher. :P

Kleine Spielerei: http://paste.pocoo.org/show/16621/

lg
Gerold
:-)
[url]http://halvar.at[/url] | [url=http://halvar.at/elektronik/kleiner_bascom_avr_kurs/]Kleiner Bascom AVR Kurs[/url]
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Donnerstag 20. Dezember 2007, 13:33

@CM in etwa sowas hier: http://www.456bereastreet.com/lab/styli ... /fieldset/

@gerold Oha... danke fuer das Beispiel ^^
Wenn ich unter Linux keine Probleme damit bekomme, versuch ich mal das Standard-HTML-Fieldset auf diese Art und Weise ;)
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Donnerstag 20. Dezember 2007, 17:49

Ah, html/CSS!

Wie wäre denn eine wx.StaticBox ? (Ist in der Demo unter "Core Windows/Controls" als Beispiel enthalten.)

Gruß,
Christian
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Freitag 21. Dezember 2007, 04:59

Hi CM,

ja es gibt auch den StaticBoxSizer... ist schon so aehnlich wie ein Fieldset, aber soweit ich weiß, gibts da keinen Titel. Vielleicht taeusche ich mich auch gerade... naja jedenfalls habe ich mal ein Fieldset aus Gerolds Vorschlag gebaut:

Code: Alles auswählen

class FieldsetPanel(wx.Panel):

    def __init__(self, parent, caption=""):
        self.caption = caption
        wx.Panel.__init__(self, parent)
        self.Bind(wx.EVT_PAINT, self.on_paint)
        self.Bind(wx.EVT_SIZE, self.on_size)


    def on_paint(self, event = None):
        MARGIN = 10

        dc = wx.PaintDC(self)
        w, h = dc.GetSizeTuple()

        TXTW = dc.GetTextExtent(self.caption)[0] + MARGIN
        TXTH = dc.GetTextExtent(self.caption)[1]

        lines = (
            (MARGIN, MARGIN, 3*MARGIN, MARGIN),
            (3*MARGIN+TXTW, MARGIN, w-MARGIN, MARGIN),
            (MARGIN, MARGIN, MARGIN, h-MARGIN),
            (w-MARGIN, MARGIN, w-MARGIN, h-MARGIN),
            (MARGIN, h-MARGIN, w-MARGIN+1, h-MARGIN)
        )
        dc.DrawLineList(lines)

        dc.DrawText(self.caption, 3*MARGIN+MARGIN/2, MARGIN-TXTH/2)
Zu verwenden ist es wie jedes andere Panel auch, bis auf den zusaetzlichen Parameter "caption" fuer die Ueberschrift.
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Freitag 21. Dezember 2007, 08:12

nkoehring hat geschrieben:ja es gibt auch den StaticBoxSizer...
Hallo nkoehring!

Nicht der Sizer, sondern die Box ist hier wichtig. Suche in der Demo doch mal nach "StaticBox".

mfg
Gerold
:-)
[url]http://halvar.at[/url] | [url=http://halvar.at/elektronik/kleiner_bascom_avr_kurs/]Kleiner Bascom AVR Kurs[/url]
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Freitag 21. Dezember 2007, 11:44

Hoi,

ich meinte mit einer StaticBox so etwas wie um "Other Parameters":
Bild
Das ist doch ungefähr, was Du suchst. Code kannst Du gerne haben, aber wahrscheinlich ist der Code in der Demo etwas direkter zugänglich.

Gruß,
Christian
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Donnerstag 3. Januar 2008, 04:32

ja genau sowas suchte ich ^^

Okay, das naechste mal schaue ich mir die fertigen Gegebenheiten genauer an :oops:

vielen Dank ;)
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
Antworten