Mehrere „OK“-Schaltflächen im modalen FensterIst es möglich, ein modales Fenster mit mehreren „OK“-Auswahlmöglichkeiten zu entwerfen?Ich denke, meine Hauptschwierigkeit besteht darin, das Fenster zu schließen, nachdem ich auf die zweite Schaltfläche „OK“ geklickt habe.Gibt es eine cleverere Möglichkeit, dies zu tun?Ich verwende JMP11. Beispiel ist unten.
Danke!
w1 = New Window( "New Window",
<<MODAL></MODAL>
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterMarkieren:
Ihre Antwort erinnert mich an das, was mein Programmierprofessor im ersten Studienjahr der Klasse dazu gesagt hat. Es hatte etwa den Effekt: „Verwirren Sie den Benutzer nicht absichtlich.“ Wenn Sie zum Beispiel nicht über die Schaltfläche „Abbrechen“ verfügen, führen Sie [delete *.*] aus.“ Ich musste damals lachen ... und jetzt!
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterIch bezweifle, dass in jedem Dialog mehr als eine Schaltfläche „OK“ oder „Abbrechen“ erforderlich ist. Diese Steuerelemente und die damit verbundenen Aktionen haben eine besondere Bedeutung. Diese beiden Schaltflächen sind als einzige Möglichkeit zum Schließen des Dialogs gedacht.Die Designprinzipien für Benutzeroberflächen vermeiden im Allgemeinen die Duplizierung von Steuerelementen, insbesondere von Standardsteuerelementen.
Das Beispiel, mit dem Sie begonnen haben, könnte ein anderes Steuerelement verwenden, um die gewünschte Option zu bestimmen, bevor das Dialogfeld geschlossen wird. Es sieht so aus, als wäre in dieser Situation eine Radiobox angebracht.
Sie möchten separate Steuerelemente für separate und unterschiedliche Zwecke verwenden.
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterDas würde mir auch gefallen. Die OK-Qualität einer Schaltfläche sollte sich auf eine andere Eigenschaft der Schaltfläche als den Schaltflächentitel beziehen.
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterHier ist ein Beispiel dafür, was Sie tun müssten
Names Default To Here( 1 );
nw = New Window( "test",
modal,
Text Box( "Click OK if you want to continue" ),
H List Box( Button Box( "OK" ), Button Box( "Cancel" ) )
);
If( nw["button"] == -1,
Throw()
);
Show( "Continuing processing" );
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterHallo Leute, ich bin neu in diesem Bereich. wenn Sie möchten, dass ein Fenster den Benutzer nur zur Eingabe von zwei Optionen auffordert
1) Ok, dann wird das Skript danach weitermachen und alles tun, was getan werden muss.
2) Abbrechen. Wenn diese Option ausgewählt ist, möchte ich das Skript stoppen/beenden oder zum Ende des Skripts gehen.
Danke
Sam
Betreff: Mehrere „OK“-Schaltflächen im modalen Fenster<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />MS, vielen Dank für den Hinweis.Wir suchen nach unterschiedlichen Namen für die Schaltflächen.Im Allgemeinen dient dies nur dazu, die Varianten „OK/Abbrechen“ und „Ja/Nein“ zu verarbeiten, aber ja, sie können gleichzeitig verwendet werden.
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterVielleicht nur eine Kuriosität, aber es ist möglich, zwei funktionierende „OK“-Tasten zu haben, solange eine davon eine „JA“-Taste ist.
Im modalen Fenster, das durch den folgenden Code generiert wird, kehren Sie durch Drücken des ersten „OK“ oder des „JA“ zurück {Knopf 1 )} wohingegen das zweite „OK“ inaktiv ist.
New Window( "New Window",
<<MODAL></MODAL>
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterNein, in diesem Fall gibt es derzeit keine Möglichkeit, das Hinzufügen der Schaltfläche „OK“ zu vermeiden.Dies geschieht, um sicherzustellen, dass das Fenster geschlossen werden kann.
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterHallo Leute,
Ein weiterer Aspekt dieser Frage: Gibt es eine Möglichkeit, ein modales Dialogfeld zu erstellen? ohne die Schaltflächen OK oder Abbrechen?
nw = new window("Test Modal", << modal(),
panelbox("Actions",
hlistbox(
a = button box("Close A",
print("Closing with A");
a << close window;
),
b = button box("Close B",
print("Closing with B");
b << close window;
)
)
)
);
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterDanke Dan!
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterEs sieht so aus, als ob Erics Lösung in (bald erscheinendem) JMP 12 funktioniert, aber JMP 11 verhält sich anders.
Ein Problem im ursprünglichen Skript besteht darin, dass w1 nicht verwendet werden kann, bis der Aufruf „Neues Fenster“ abgeschlossen ist, und im Fall eines modalen Fensters wird der Aufruf erst abgeschlossen, wenn das Fenster geschlossen wird!Und da das Fenster verschwunden ist, wenn der Aufruf zurückkehrt, ist der Rückgabewert eines modalen Aufrufs von „Neues Fenster“ überhaupt keine Fensterreferenz.Stattdessen ist es {Button(1)}, wenn OK gedrückt wurde, und {Button(-1)}, wenn Abbrechen gedrückt wurde.
Glücklicherweise können Sie eine <
w1 = New Window( "New Window",
<<MODAL></MODAL>
Beachten Sie, dass das Verhalten der hinzugefügten Schaltfläche eher „Abbrechen“ als „OK“ ähnelt – der Rückgabewert w1 ist {Button(-1)} für die Schaltfläche „Andere OK“ und das On Validate()-Skript [sofern vorhanden ] wird nicht ausgeführt.Das ist in Ordnung – Sie können einfach Ihre eigene Validierung innerhalb des Schaltflächenskripts durchführen, aber denken Sie daran, wenn Sie sich den Rückgabewert von New Window() ansehen.
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterHallo Eric,
Danke für die Antwort. Wenn ich Ihr Skript ausführe,
Current Window() << Close Window;
Schließt das Skriptfenster, nicht das Meldungsfeld. Tun Sie etwas Besonderes, damit es funktioniert?
Betreff: Mehrere „OK“-Schaltflächen im modalen FensterVersuchen Aktuelles Fenster() anstatt zu versuchen, auf w1 zu verweisen. Das hat bei mir funktioniert:
w1 = New Window( "New Window",
<<MODAL></MODAL>