Resize all elements of a gtk.Window

Programmierung für GNOME und GTK+, GUI-Erstellung mit Glade.
Antworten
TryToLearn
User
Beiträge: 39
Registriert: Freitag 6. Juni 2014, 13:44

Hallo Welt,
ich habe eine aufwendige Benutzeroberfläche, die für eine bestimmte Größe programmiert wurde. Das bedeutet fast jedem Element in dem Hauptfenster wurde eine Größe zugeordnet.
Jetzt zu meinem Problem: Ich möchte diese Benutzeroberfläche jetzt auf einem anderen Gerät und damit auch in einer anderen Größe verwenden. Hierzu würde ich gerne die Größe aller Elemente in der GUI der neuen Größe des Fensters automatisch anpassen.
Hat jemand eine Idee wie ich dies angehen könnte?
Ich habe schon einiges ausprobiert und auch das Web durchforstet, leider bislang ohne Erfolg.

Das Programm der Oberfläche ist einige Tausend Zeilen lang, weshalb ich ungern alle Größen der Elementen anpassen würde. Hinzu kommt, dass ich das Programm weiterhin auf dem alten Gerät verwenden möchte und mein Plan ist das gleiche Programm auf beiden Geräten zu verwenden. Am Anfang soll ausgelesen werden auf welchem Gerät die Oberfläche gestartet wird und dann soll die Oberfläche in der entsprechenden Größe gestartet werden.

Grüße
TryToLearn
BlackJack

@TryToLearn: Es wird wohl nichts darum herum führen das Layout komplett zu überarbeiten so dass es ohne feste Angaben funktioniert. Das muss man dann aber auch nur einmal machen und danach sollte die GUI für jede Grösse des Hauptfensters funktionieren (solange alle Elemente eine sinnvolle, benutzbare Mindestgrösse einnehmen können).
TryToLearn
User
Beiträge: 39
Registriert: Freitag 6. Juni 2014, 13:44

@BlackJack: Danke für deine Antwort. Eigentlich ist neu programmieren keine Option. Ich schaue mal ob ich andere Möglichkeiten finde das Problem zu umgehen. Ansonsten muss man wohl in den sauren Apfel beißen und die Oberfläche neu programmieren...
BlackJack

@TryToLearn: Falls das halbwegs ordentlich strukturiert und GUI und Programmlogik sauber getrennt ist, sollte das kein *so* grosses Problem sein. Andernfalls sollte man da sowieso noch mal ran und es ordentlich machen. :-)
TryToLearn
User
Beiträge: 39
Registriert: Freitag 6. Juni 2014, 13:44

@BlackJack: Keine Sorge die Programmstrucktur ist natürlich nach dem MVC Modell erstellt. Aber es ist wirklich eine sehr umfangreiche Oberfläche und die neuen Größen werden auch nicht beim ersten Mal passen daher ist das schon viel Aufwand :D
BlackJack

@TryToLearn: Normalerweise lässt man ja die Widgets entscheiden wie gross sie selber sein wollen/müssen um ihren Inhalt darzustellen und gibt dann an an welchen Stellen die Wigdets wachsen dürfen/sollen wenn mehr Platz zur Verfügung steht, also wenn man das Fenster zum Beispiel grösser zieht.
Antworten