Sélection / mise en évidence du bouton par défaut dans la fenêtre modaleEst-il possible de définir un bouton spécifique comme bouton sélectionné dans la fenêtre modale pour permettre l'utilisation de ce bouton en appuyant sur Entrée / Espace?
Dans l'exemple de script que j'ai ajouté, je voudrais que la sélection par défaut soit le bouton "OK" de la fenêtre modale, mais par défaut, il est défini comme première sélection de boîte radio (dans ce cas, "Option 1") et je n'ai pas figuré comment le changer. J'ai réussi à le faire en créant un faux bouton comme premier élément de la nouvelle fenêtre (sélectionné par défaut) qui clique sur le bouton Ok mais je pense que c'est un moyen un peu hacky de le faire fonctionner (commenté dans l'exemple de script).
Names Default To Here(1);
okPushed = 0;
nw = New Window("Modal window", << modal, Show toolbars(0), Show menu(0),
//fakebutton = Button Box(" ",<< Style("underline"), << set function(ok_button << click)),
rb = Radio Box(
{"Option 1", "Option 2"}, << Set(2)
),
Panelbox("Actions",
Hlistbox(
ok_button = button box("OK", okPushed = 1; sel = rb << get selected),
cancel_button = button box("Cancel", okPushed = 0; stop();),
)
),
);
if(okPushed == 0, stop());
show(sel);
ScriptingRe: sélection de bouton par défaut / surlignage dans la fenêtre modalePouvez-vous mettre le bouton OK en haut de la fenêtre?
Re: sélection de bouton par défaut / surlignage dans la fenêtre modaleoui ... voici un exemple
Names Default To Here( 1 );
nw = New Window("At the Top", << modal,
v list box(
button box("OK", nw << close window ),
spacer box(size(0,25)),
text box(" at the bottom")
)
)
Re: sélection de bouton par défaut / mise en évidence dans la fenêtre modaleDéplacer les boutons vers le haut pourrait être une option pour éviter d'ajouter un bouton vide en haut.
En testant rapidement, il semble que si je ne modifie pas la nouvelle fenêtre, appuyez sur la touche Entrée pour appuyer sur le bouton OK au lieu de la première option des boutons radio.
Names Default To Here(1);
okPushed = 0;
nw = New Window("Modal window", Show toolbars(0), Show menu(0),
rb = Radio Box(
{"Option 1", "Option 2"}, << Set(2)
),
Panelbox("Actions",
Hlistbox(
ok_button = button box("OK", okPushed = 1; sel = rb << get selected; nw << close window;),
cancel_button = button box("Cancel", okPushed = 0; nw << close window;)
)
),
);
nw << on close(
if(okPushed == 0, show(sel, okPushed); stop(),
show(sel, okPushed);
);
);
Re: sélection du bouton par défaut / mise en évidence dans la fenêtre modaleEn utilisant actuellement la même solution de contournement que celle mentionnée dans le message d'ouverture avec fakebutton:
Names Default To Here(1);
okPushed = 0;
nw = New Window("Modal window", << modal, Show toolbars(0), Show menu(0),
fakebutton = Button Box(" ",<< Style("underline"), << set function(ok_button << click)),
rb = Radio Box(
{"Option 1", "Option 2"}, << Set(2)
),
Panelbox("Actions",
Hlistbox(
ok_button = button box("OK", okPushed = 1; sel = rb << get selected),
cancel_button = button box("Cancel", okPushed = 0; stop();),
)
),
);
if(okPushed == 0, stop());
show(sel);Quelque chose de similaire pourrait également être utilisé comme solution de contournement Définir le focus sur la zone d'édition de texte
Également créé un nouveau souhait: Autoriser << SetFocus à être utilisé avec des éléments d'affichage interactifs (TextEditBox, Button ...)