Selección/resaltado de botón predeterminado en la ventana modal¿Es posible establecer un botón específico como botón seleccionado en la ventana modal para permitir el uso de ese botón con la tecla Intro/Espacio?
En el script de ejemplo que agregué, me gustaría tener una selección predeterminada para que sea el botón "Aceptar" de la ventana modal, pero de manera predeterminada está configurado como la primera selección del cuadro de opción (en este caso, "Opción 1") y no me he dado cuenta saber cómo cambiarlo. Logré hacer esto creando un botón falso como primer elemento en la nueva ventana (seleccionado de forma predeterminada) que hace clic en el botón Aceptar, pero creo que esta es una forma un poco complicada de hacer que funcione (comentado en el script de ejemplo).
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);
secuencias de comandosRe: Selección/resaltado de botón predeterminado en la ventana modalActualmente usando la misma solución que se menciona en el mensaje de apertura con 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);También algo similar a esto probablemente podría usarse como una solución alternativa Establecer el foco en el cuadro de edición de texto
También creó un nuevo deseo: Permitir que <
Re: Selección/resaltado de botón predeterminado en la ventana modalMover los botones hacia arriba podría ser una opción para evitar agregar un botón vacío en la parte superior.
Probando rápidamente, parece que si no hago la Nueva ventana modal, presionar la tecla Intro presionará el botón Aceptar en lugar de la primera opción de botones de opción.
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: Selección/resaltado de botón predeterminado en la ventana modalsi... aqui hay un ejemplo
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: Selección/resaltado de botón predeterminado en la ventana modal¿Puedes poner el botón Aceptar en la parte superior de la ventana?