Fenster mit fester Größe in GTkmm



  • Wie kann man mit Gtkmm ein Fenster mit definierter, nicht veränderbarer Größe erzeugen?
    Habe in der Dokumentation dazu nichts gefunden.



  • ch++ schrieb:

    Wie kann man mit Gtkmm ein Fenster mit definierter, nicht veränderbarer Größe erzeugen?
    Habe in der Dokumentation dazu nichts gefunden.

    http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Window.html

    Dort suchste mal nach

    resizable
    

    😉



  • Wie setze ich eine Größe fest?

    resize()
    

    und

    set_default_size()
    

    funktionieren nicht.



  • Der Tip war:

    abcdefg schrieb:

    resizable
    


  • Laut meinen Informationen sorgt resizable lediglich für ein in der Größe nicht veränderbares Fenster. Wenn ich dies kompiliere, hat mein Fenster die minimalst-mögliche Größe, und ich kriege es nicht hin, ihm vorher eine andere Größe zu geben.



  • Ich kann fast nicht glauben, dass Du nicht weisst, wie man die Anfangsgrösse eines Fensters festlegt...
    Stichworte wären width und hight.

    Und wenn es an etwas anderem liegt, dann zeige mal bitte Deinen Code.



  • Es heisst natürlich height. 😉



  • Tut mir leid, wenn ich gerade böld bin, aber die einzigen Sachen, die ich in Referenz und Dokumentation bezüglich width und height gefunden habe, sind die oben genannten Funktionen.



  • Wenn du eine Funktion suchst, die dir die minimale Größe eines widget festlegt, solltest du genau danach suchen. Du solltest dir auch die Beschreibungen zu den Funktionen durchlesen, dann wüstest du warum set_default_size() in deinem Fall nicht funktioniert und hättest die richtige Funktion schon gefunden.



  • If the window's "natural" size (its size request) is larger than the default, the default will be ignored. More generally, if the default size does not obey the geometry hints for the window (set_geometry_hints() can be used to set these explicitly), the default size will be clamped to the nearest permitted size.

    Unlike Gtk::Widget::set_size_request(), which sets a size request for a widget and thus would keep users from shrinking the window, this function only sets the initial size, just as if the user had resized the window themselves. Users can still shrink the window again as they normally would. Setting a default size of -1 means to use the "natural" default size (the size request of the window).

    For more control over a window's initial size and how resizing works, investigate set_geometry_hints().

    For some uses, resize() is a more appropriate function. resize() changes the current size of the window, rather than the size to be used on initial display. resize() always affects the window itself, not the geometry widget.

    The default size of a window only affects the first time a window is shown; if a window is hidden and re-shown, it will remember the size it had prior to hiding, rather than using the default size.

    Windows can't actually be 0x0 in size, they must be at least 1x1, but passing 0 for width and height is OK, resulting in a 1x1 default size.

    Falls die gewünschte Funktion set_geometry_hints() ist, ist mein Englisch zu schlecht, ich verstehe die Beschreibung jedenfalls nicht so. Welche Funktion ist es denn jetzt?



  • Tschuldigung, hatte die Funktionsberschreibung bei set_size_request() so verstanden, dass die Funktion nur bei normalen Widgets läuft, nicht bei Fenstern.


Anmelden zum Antworten