Jak se dá programově nastavit fokus na komponentu ve chvíli, když mám dialog s řekněme dvěma vstupními poli a třemi tlačítky (Ok-Cancel-Help)? Jde mi o to, aby tlačítko reagovalo na Space. Jo a jde taky nějak deklarativně nastavit, že Ok reaguje na Enter (vždy) a Cancel na Escape (taky vždy). Tj. tak, jak bylo ukazováno u Tkinteru?
(Myšlenka je taková, že kromě PushButtonu by existovaly třídy OkButton a CancelButton, ať se to nemusí psát pořád dokola).
Když použiješ třídu QDialog, bude Escape automaticky zavírat dialog a výchozím tlačítkem je první přidané do dialogu, případně to lze změnit voláním metody setDefault (viz příklad), podrobnosti se dají najít v nápovědě Qt. Fokus lze programově nastavit voláním metody setFocus, ale v případě dialogu z uvedené ukázky by to ani nebylo potřeba.