Seite 1 von 1

Nur bestimmte Widgets fokusieren?

Verfasst: 22. Februar 2012 19:57
von gandalffo
Hallo,
ich habe folgendes Problem:
Ich habe ein eigenes Widget erstellt, das eine Textbox, ein Label und einen Button enthält.
Ich habe das Widget öfters hintereinander in einem übergeordneteten QFrame.
Per Tastendruck möchte ich nun den Fokus weiterreichen, aber nur auf die eigens erstellten Widgets.
Bis jetzt wird jedes Element fokusiert!!
Wie kann ich das umgehen??
Kann mir jemand helfen, danke.

Re: Nur bestimmte Widgets fokusieren?

Verfasst: 22. Februar 2012 22:13
von Christian81
Jedes Widget hat eine FocusPolicy und focusWidget() sollte da auch helfen.

Re: Nur bestimmte Widgets fokusieren?

Verfasst: 22. Februar 2012 22:26
von gandalffo
Vielen Dank für die Antwort.

Allerdings werden die Widgets mit der Funktion focusNextChild und focusPreviousChild fokusiert.

Re: Nur bestimmte Widgets fokusieren?

Verfasst: 23. Februar 2012 06:30
von Christian81
Wenn ein Widget die richtige FocusPolicy hat wird es nicht fokusiert -> Doku!

Re: Nur bestimmte Widgets fokusieren?

Verfasst: 29. Februar 2012 10:04
von gandalffo
Habs geschafft danke.

Habe es wie folgt gelöst:
- Alle Elemente des eigenen Widgets sind auf NoFocus.
- Bei Klick wird das Widget fokusiert, fixisiert und die Elemente auf StrongFocus geschalten.
- Bei jedem Rechts oder Links Dreh wird das Signal an das Widget weitergereicht und das nächste Element aus einer QObjectList,
die alle Elemente des Widgets enthält, durchlaufen und mit setFocus selektiert.

Re: Nur bestimmte Widgets fokusieren?

Verfasst: 29. Februar 2012 14:31
von Christian81
Meines Erachtens viel zu umständlich - eine korrekte TabOrder und FocusPolicy für jedes Widget und fertig.