2012-03-27 12 views
6

Próbuję umieścić zestaw przycisków tak, aby były zakotwiczone w prawym dolnym rogu ekranu. Mój problem polega na tym, że za każdym razem, gdy zmieniam rozmiar ekranu, przyciski nie są zakotwiczone w prawym dolnym rogu, ale pozostają w aktualnej pozycji.QT - Przyciski miejsca na dole z prawej

Umieściłem dwa przyciski w układzie poziomym. Następnie umieściłem ten układ w układzie siatki, który zawiera poziomy i pionowy odstęp. Zmodyfikowałem właściwość layoutSize Grid Layout na SetMaximumSize.

Co robię nieprawidłowo, aby ustawić przyciski na dole po prawej?

enter image description here

Odpowiedz

5

Masz prawie wszystko dokładnie tutaj, ale prawdopodobnie przeoczyłeś coś, co naprawdę łatwo przegapić, gdy po raz pierwszy zaczynasz używać Qt Designer.

Układ siatki siedzi wewnątrz widżetu ze stałym rozmiarem i pozycją. To też musi być zarządzane przez układ. Jeśli przyjrzysz się Inspektorowi obiektów w prawym górnym rogu (zawierającym twoją hierarchię) prawdopodobnie zobaczysz widżet najwyższego poziomu z czerwoną ikoną. Oznacza to, że nie zawiera układu. Masz dwie opcje, aby to naprawić ...

  1. Umieść istniejący układ siatki w innym układzie głównym (jak układ pionowy). Wystarczy kliknąć prawym przyciskiem myszy na widget najwyższego poziomu w Inspektorze obiektów -> Rozmieść -> [Wybierz główny typ układu].
  2. Masz siatkę główną. Aby to zrobić, musisz usunąć układ siatki i ustawić elementy swojego dziecka dokładnie tak, jak masz je na tym obrazku. Następnie postępuj zgodnie z poprzednią opcją, klikając prawym przyciskiem widżet najwyższego poziomu (lub puste tło) i wybierz Rozmieść -> Siatka. Spowoduje to przeniesienie twoich widżetów do siatki w najlepszym wizualnym dopasowaniu (które możesz wtedy poprawić, jeśli to konieczne), a twoja siatka będzie układem najwyższego poziomu.
+0

Świetnie. Dziękuję Ci bardzo :) – Jon

1

To układ siatki sprawi, umieszczając inne widżety dość trudne. Zamiast tego spróbuj:

  1. Dodaj (od lewej do prawej) przekładkę poziomą i dwa przyciski.
  2. Zaznacz je wszystkie.
  3. Wybierz "Ułóż w poziomie" (Ctrl-H) z górnego paska narzędzi Qt Designer (lub Qt Creator) (nie z pola widgetu po lewej stronie!).
  4. Dodaj pionową ramkę na wierzchu poprzednich widżetów.
  5. Wybierz główne okno, klikając je (żaden z dodanych widżetów nie jest teraz wybrany).
  6. Wybierz "Ułóż w pionie" (Ctrl-L) z górnego paska narzędzi.
  7. Gotowe.
+2

Założę się, że mogę to zrobić w 6 krokach! :-P – jdi

+1

Nawet pominąłem ??? i kroki zysku. –

+0

Gdybym musiał spalić 7. krok, po prostu zmieniłbym go na: "7. Zrób kanapkę". (+1 dla odniesienia do SouthPark również) – jdi

0

Wygląda na to, że robisz to poprawnie. Po prostu zapomniałem zastosować układ do głównego widgetu, prawda? Układ siatki powinien być ułożony w twoim głównym widgetie. Bardziej wygodnym sposobem jest usunięcie widgetu układu siatki i rozmieszczenie centralnego widgetu w siatce ;-)

Powiązane problemy