Seite 1 von 1
Frame an Bildschirm verschiedenen Bildschirmen anpassen
Verfasst: Mittwoch 13. Juli 2011, 12:28
von Begin
Hallo,
ich probiere gerade einen Frame zu erstellen der mehrere selbst gezeichnete Button und Beschriftungen, sowie Grafiken, wie LED und Display hat.
Mein Problem ist, ich benutze gerade
soweit passt noch alles, aber wenn ich mit der Maus das Fenster kleiner mache verschwinden dann meine Buttons oder Grafiken, ich schätzte weil die nicht mit skaliert werden.
Wie könnte ich das machen immer die größte Bildschirmauflösung zu haben und wenn ich das Fenster verkleinere, dass der Inhalt mit skaliert wird.#
Wenn es geht nicht unbedingt ein Wort wie sizer hinschreiben.
Vielen Dank
Re: Frame an Bildschirm verschiedenen Bildschirmen anpassen
Verfasst: Mittwoch 13. Juli 2011, 12:51
von BlackJack
@Begin: Verwendest Du denn Sizer? Eigentlich sollten Widgets nämlich eine minimale Grösse haben unter die man sie nicht verkleinern kann.
Re: Frame an Bildschirm verschiedenen Bildschirmen anpassen
Verfasst: Mittwoch 13. Juli 2011, 12:55
von Begin
Nein, ich verwende keinen sizer!
Wenn der helfen würde, wäre ich über Informationen erfreut. Denn muss ich wahrscheinlich für den Frame und die Grafik eigentlich alles benutzen oder ?
Ich möchte es so wie bei Windows haben wenn ich das Fenster klein mach soll alles klein werden und nicht irgendwelche Teile weglassen.
Danke schon mal für die antwort
Re: Frame an Bildschirm verschiedenen Bildschirmen anpassen
Verfasst: Mittwoch 13. Juli 2011, 12:59
von Gremlin
Dann schau dir doch mal die
wxPython Demo for Windows an. Da findest du ein Sizer Beispiel das deinen Fall betrifft. (Und natürlich noch andere Dinge

)
Re: Frame an Bildschirm verschiedenen Bildschirmen anpassen
Verfasst: Mittwoch 13. Juli 2011, 13:45
von Begin
Meinst du das mit dem Layoutf ?
Das würde ich denken,das es geht. Muss ich gleich mal testen.
Re: Frame an Bildschirm verschiedenen Bildschirmen anpassen
Verfasst: Mittwoch 13. Juli 2011, 15:42
von Begin
Hab das mit dem Sizer gefunden, aber irgendwie blick ich da nicht durch.
Gibts da keine kleineren Beispiele ?
Code: Alles auswählen
class MyFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, wx.ID_ANY, 'Hallo', pos=(0, 0), size=wx.DisplaySize())
self.SetBackgroundColour("black")
Hab hier mein Layout und im Layout habe ich selbst erstellte Grafiken als Buttons benutzt.
Muss man zuerst das Layout sizen und dann alle Dinge die in dem Layout sind ?
Hoffe jeder hat Verständnis!
Danke
Re: Frame an Bildschirm verschiedenen Bildschirmen anpassen
Verfasst: Donnerstag 14. Juli 2011, 09:26
von Nebelhom
Bevor ich versuche eine nicht adequate Erklaerung abzugeben, verweise ich lieber auf die Tutorials, die es frei im Netz gibt und die mir recht gut geholfen haben.
Another wxPython Tutorial =>siehe Layout Management
Das tolle Zetcode Tutorial => siehe wieder Layout Management
Falls Englisch das Problem ist, warum diese noch nicht gefunden hast sieh dir mal den thread an
viewtopic.php?f=19&t=5302. Vielleicht hilft es ja.
Im Grunde gibt es zwei Arten mit wxpython ein Layout zu machen. Durch absolute positionierung (koordinaten angabe und groessen angabe als pixelzahl) und eben durch sizer. Sizer werden innerhalb von Frames und Panels benutzt, um sich anhand von angegebenen Flags und relativen ordnungsangaben (relativ zu anderen sizern) mehr oder minder automatisch anzuordnen. Das ist fuer code maintenance dann einfacher als alle absoluten positionierungen immer aendern zu muessen, wenn man ein neues widget einbauen will.
Ein weiterer Nebeneffekt von absoluter positionierung ist eben der, den du gesehen hast.
hope that helps.