Utiliser un autre bouton au lieu de "Ok" - Fenêtres modalesSalut,
Je viens de commencer à apprendre les scripts, veuillez donc excuser le codage désordonné ou redondant haha.J'essaie de combiner quelques éléments que j'ai récupérés sur ces forums.Fondamentalement, donnez à l'utilisateur la possibilité d'ouvrir un fichier ou de sélectionner un fichier déjà ouvert.J'ai finalement compris que je devais utiliser une fenêtre modale pour attendre que la sélection soit faite avant de continuer le script.
Existe-t-il un moyen de faire en sorte que le code continue lorsque la sélection est effectuée ? Au lieu d'attendre que l'utilisateur appuie sur le bouton "OK" ?Donc pour mes deux options :
1. L'utilisateur ouvre un fichier --> continuer lorsque le fichier est ouvert
2. L'utilisateur sélectionne un fichier ouvert --> continuer lorsque le fichier est sélectionné
À l'heure actuelle, les faire appuyer sur le bouton "ok" après la sélection semble redondant.Merci pour toute aide!
InputWindow = New Window( "Pick a file opening option (must be truncated)", <<MODAL></MODAL>
Re : Utiliser un autre bouton au lieu de "Ok" - Fenêtres modalesSalut,
Merci pour les réponses.Ah, je pense que tout le monde a raison de dire que je n'en avais pas besoin pour être modal.C'était la première solution que j'ai trouvée pour que ma table reste définie après que la sélection ait été faite et que le script ait dépassé la sélection de la fenêtre.
Quoi qu'il en soit, le clic automatique a déjà fonctionné pour ce que j'avais écrit.Mais je vais essayer la manière simple d'utiliser les fonctions.Merci encore.
Re : Utiliser un autre bouton au lieu de "Ok" - Fenêtres modalesLes fenêtres modales sont conçues pour obliger un utilisateur à cliquer sur OK avant que l'exécution ne se poursuive.Alternativement, vous pouvez avoir une fenêtre non modale et attacher un script à un bouton ou à une zone d'affichage qui permet des sélections.Dans l'exemple ci-dessous, l'exécution continue dès qu'une sélection est effectuée :
Names Default To Here(1);
lst = {"Item 1","Item 2","Item 3","Item 4"};
nw = New Window("Selection",
Border Box(top(20),bottom(20),left(20),right(20),
V List Box(
Text Box("Select an item from the list:"),
lb = List Box(lst,<<SETMAXSELECTED></SETMAXSELECTED>
Re : Utiliser un autre bouton au lieu de "Ok" - Fenêtres modalesVous pouvez simplement créer manuellement le bouton OK et cliquer dessus avec btn << Cliquez.
InputWindow = New Window( "Pick a file opening option (must be truncated)",
<<MODAL></MODAL>
Mais il semble que vous n'ayez peut-être pas besoin d'une boîte de dialogue modale.Vous pouvez simplement faire en sorte que le reste de votre exécution de code soit une fonction ou une expression et l'envoyer à chaque bouton.
domorestuff = function({},
print(dt);
);
InputWindow = New Window( "Pick a file opening option (must be truncated)",
V List Box(
Text Box( "Pick a Cut and Truncated Waveform" ),
Spacer Box( size( 1, 10 ) ),
Button Box( "Open a file",
path = Pick File(
"Select Raw Waveform data",
"", // no default directory
{"JMP Files|jmp;jsl;jrn", "All Files|*"},
1,
0,
"" // no default file
);
dt = Open( path ); //probably should do this instead of current data table()
//dt = Current Data Table();
domorestuff();
),
Spacer Box( size( 10, 1 ) ),
Button Box( "Select from a list",
choose_data_table = Function( {},
list = {};
For( i = 1, i <= N Table(), i++,
list[i] = Data Table( i ) << get name
);
win = New Window( "Select a data table",
<<MODAL></MODAL>