2012-06-20 10 views
6

Jeśli nie ponownie zaimplementuję QMainWindow::showEvent() (która będzie zawierała metodę setFocus() dla tego widżetu), czy istnieje sposób na umożliwienie niektórym widgetom skupienia się najpierw, gdy okno jest załadowana ? Używam edytora formularzy Qt4, ale nie udało mi się znaleźć gdzieś tego skonfigurować.Qt4: dopasuj, który widget jest skupiony na uruchomieniu

Odpowiedz

12

Możesz ustawić Tab Order w Qt Designer lub komponencie Designer w Qt Creator. Pierwszy widget w kolejności tabulacji powinien skupić się na obciążeniu.

tab order

Wielu użytkowników oczekiwać, aby być w stanie poruszać się między widgetami i kontroli wykorzystaniem jedynie klawiatury. Qt pozwala użytkownikowi nawigować między widżetami wejściowymi ze skrótami klawiaturowymi Shift + Tab i Shift + Tab . Domyślna kolejność jest określana na podstawie kolejności tworzenia widżetów. Chociaż ta kolejność może być wystarczające dla wielu użytkowników, to często lepiej jednoznacznie określić kolejność zakładkę, aby aplikacja ułatwia użytkowania.

Ustawianie Tab Order

Aby przejść do trybu edycji kolejności aktywacji, otwórz menu Edycjai wybierz Edycja Tab Order. W tym trybie każdy widżet wejściowy w formularzu jest wyświetlany z numerem wskazującym jego pozycję w kolejności tabulacji. Tak więc, jeśli użytkownik poda pierwszy widget wejściowy, fokus wejściowy, a następnie naciśnie klawisz tabulatora, fokus zostanie przeniesiony do drugiego widżetu wejściowego i tak dalej.

Kolejność kart definiuje się, klikając każdą z liczb w poprawnej kolejności . Pierwszy numer, który klikniesz zmieni się na czerwony, , wskazując aktualnie edytowaną pozycję w łańcuchu kolejności kart. Widget powiązany z numerem stanie się pierwszym widgetem w łańcuchu zamówień . Kliknięcie na inny widżet spowoduje, że będzie on drugi w kolejności tabulacji i tak dalej.

Powtarzaj tę procedurę, dopóki nie będziesz zadowolony z kolejność kart w formularzu - nie musisz klikać każdego widżetu wejściowego, jeśli zobaczysz, że pozostałe widżety są już we właściwej kolejności. Numery dla , które już ustawiłeś, zmieniają się na zielone, a te, które nie są jeszcze kliknięte, pozostają niebieskie.

Jeśli popełnisz błąd, po prostu kliknij dwukrotnie poza dowolnym numerem lub wybierz opcję Uruchom ponownie z menu kontekstowego formularza, aby rozpocząć od nowa. Jeśli masz wiele widżetów na formularzu i chciałby zmienić kolejność tabulatora w środku lub na końcu łańcucha zamówień zakładce można edytować go w dowolnej pozycji. Naciśnij klawisze Ctrl i kliknij numer, od którego chcesz rozpocząć odtwarzanie . Ewentualnie wybierz Zacznij od tutaj w menu kontekstowym.

9

Nigdy nie używałeś edytora formularzy, ale możesz po prostu wywołać widgety setFocus method w kodzie po utworzeniu głównego okna.

+0

prosty i działa –

Powiązane problemy