Holen Sie sich ein neues Fenster mit vorhandenen RadiobuttonsHallo JMP-Community,
Ich bin neu bei JMP. Ich habe Zweifel. Unten ist mein Code angehängt. Wenn ich die Kombinationsfeldschaltfläche auswähle, eine Form auswähle und auf „OK“ klicke, sollte ein neues Fenster erscheinen, in dem nur die erforderlichen Spalten hervorgehoben werden. Wenn ich beispielsweise die L-Form aus ShapeChoice auswähle, sollte das neue Fenster mit allen angegebenen HL, VL, HH, VH, BL, UL usw. erscheinen, aber nur die Option bieten, die Werte nur für HL, HW, HH, VL, VW und VH einzugeben. Können Sie mir bitte helfen? Vielen Dank im Voraus.
Names Default To Here( 1 );
dlg = New Window("Dimensions",
<<MODAL></MODAL><LINGO-LABS id="lingo-labs-824980" slang="en-US" mode="CREATE"><LINGO-LABEL>Grundlegende Datenanalyse und Modellierung</LINGO-LABEL><LINGO-LABEL>Datenzugriff</LINGO-LABEL><LINGO-LABEL>Datenexploration und -visualisierung</LINGO-LABEL><LINGO-LABEL>Versuchsplanung</LINGO-LABEL><LINGO-LABEL>Windows</LINGO-LABEL></LINGO-LABS>Betreff: Neues Fenster mit vorhandenen Radiobuttons erhaltenVielleicht möchten Sie einen Blick auf IfBox werfen. Dieser aktuelle Beitrag könnte auch einige Ideen liefern , wie man GUI-Elemente effektiv ausblendet/einblendet.
Betreff: Neues Fenster mit vorhandenen Radiobuttons erstellenVielen Dank für die Hilfe, aber ich brauche auch eine Benutzereingabeoption dafür.
Betreff: Neues Fenster mit vorhandenen Radiobuttons erhaltenSie könnten also If-Boxen verwenden, die Sie je nach Benutzerauswahl auf 0/1 setzen?
Betreff: Neues Fenster mit vorhandenen Radiobuttons erhaltenHabe das nicht verstanden. Tut mir leid, aber ich bin neu hier. Können Sie es mir erklären? Danke!
Betreff: Neues Fenster mit vorhandenen Radiobuttons erhaltenIch muss zuerst besser verstehen, was Sie haben möchten. Welche Nummernbearbeitungsfelder sollen angezeigt werden, wenn der Benutzer die Form auswählt?
Betreff: Neues Fenster mit vorhandenen Radiobuttons erhaltenHier ist der Ansatz, den ich wählen würde
Names Default To Here( 1 );
hideAll = Function( {},
tb1 << visibility("collapse");
tb2 << visibility("collapse");
tb3 << visibility("collapse");
tb4 << visibility("collapse");
tb5 << visibility("collapse");
tb6 << visibility("collapse");
tb7 << visibility("collapse");
tb8 << visibility("collapse");
tb9 << visibility("collapse");
tb10 << visibility("collapse");
tb11 << visibility("collapse");
tb12 << visibility("collapse");
hl_box << visibility("collapse");
hw_box << visibility("collapse");
hh_box << visibility("collapse");
vl_box << visibility("collapse");
vw_box << visibility("collapse");
vh_box << visibility("collapse");
bl_box << visibility("collapse");
bw_box << visibility("collapse");
bh_box << visibility("collapse");
ul_box << visibility("collapse");
uw_box << visibility("collapse");
uh_box << visibility("collapse");
comboVal = (ShapeChoice << get items)[ShapeChoice << get];
If( comboVal == "Rectangle/Square",
tb1 << visibility("Visible");
hl_box << visibility("Visible");
tb4 << visibility("Visible");
vl_box << visibility("Visible");
,
comboVal == "L-Shape",
tb1 << visibility("Visible");
hl_box << visibility("Visible");
tb2 << visibility("Visible");
hw_box << visibility("Visible");
tb3 << visibility("Visible");
hh_box << visibility("Visible");
tb4 << visibility("Visible");
vl_box << visibility("Visible");
tb5 << visibility("Visible");
vw_box << visibility("Visible");
tb6 << visibility("Visible");
vh_box << visibility("Visible");
)
);
// This Expr is where all of the script is placed that is to be run after the user
// clicks on OK in the Dimensions data entry window
runtherest = Expr(
);
dlg = New Window("Dimensions",
//<<MODAL></MODAL>Betreff: Neues Fenster mit vorhandenen Radiobuttons erhaltenDas Lösungsskript ist sehr hilfreich. Ich arbeite derzeit auch an einem Problem mit der Erfassung von Benutzerinformationen. Eines der Elemente, die ich erfassen möchte, ist eine Losliste, die auf einer JMP-Datentabelle basiert. Ich bin sicher, dass es dafür eine bessere Möglichkeit gibt, aber ich habe dem Lösungsskript einen neuen Abschnitt hinzugefügt, in dem der Benutzer ein Verzeichnis, eine Datei und eine Spalte mit den Informationen auswählen kann. Gibt es Ratschläge, wie man das verbessern kann? Außerdem habe ich die Methode runtherest = Expr(); nicht gesehen. Ich habe versucht, einige einfache Skriptaktionen in den Raum zwischen den Klammern einzugeben, konnte sie aber nicht ausführen. Was übersehe ich?
Names Default To Here( 1 );
hideAll = Function( {},
tb1 << visibility("collapse");
tb2 << visibility("collapse");
tb3 << visibility("collapse");
tb4 << visibility("collapse");
tb5 << visibility("collapse");
tb6 << visibility("collapse");
tb7 << visibility("collapse");
tb8 << visibility("collapse");
tb9 << visibility("collapse");
tb10 << visibility("collapse");
tb11 << visibility("collapse");
tb12 << visibility("collapse");
hl_box << visibility("collapse");
hw_box << visibility("collapse");
hh_box << visibility("collapse");
vl_box << visibility("collapse");
vw_box << visibility("collapse");
vh_box << visibility("collapse");
bl_box << visibility("collapse");
bw_box << visibility("collapse");
bh_box << visibility("collapse");
ul_box << visibility("collapse");
uw_box << visibility("collapse");
uh_box << visibility("collapse");
comboVal = (ShapeChoice << get items)[ShapeChoice << get];
If( comboVal == "Rectangle/Square",
tb1 << visibility("Visible");
hl_box << visibility("Visible");
tb4 << visibility("Visible");
vl_box << visibility("Visible");
,
comboVal == "L-Shape",
tb1 << visibility("Visible");
hl_box << visibility("Visible");
tb2 << visibility("Visible");
hw_box << visibility("Visible");
tb3 << visibility("Visible");
hh_box << visibility("Visible");
tb4 << visibility("Visible");
vl_box << visibility("Visible");
tb5 << visibility("Visible");
vw_box << visibility("Visible");
tb6 << visibility("Visible");
vh_box << visibility("Visible");
,
comboVal == "Lot List Input (from a JMP File)",
tb13 << visibility("Visible");
dir=Pick Directory(1);
files = Files In Directory(dir);
// It would be nice if display could be updated to show collected information before user makes selection.
win2=New Window ("Select File Containing Lot List",
<<MODAL></MODAL> Betreff: Neues Fenster mit vorhandenen Radiobuttons erhaltenEs gibt viele Möglichkeiten, eine Datentabelle auszuwählen, um Ihre Losliste abzurufen. Ihre Methode scheint zu funktionieren. Ich bin etwas verwirrt über Ihren Kommentar zum Aktualisieren der Informationen.
Was den "runtherest" betrifft, wird jeder Code, den Sie in Expr() einfügen, ausgeführt, wenn die OK-Schaltfläche angeklickt wird. Versuchen Sie, den Abschnitt durch zu ersetzen
runtherest = Expr(
Show( shapechoice, combochoice, hl, hw, hh, vl, vw, vh, bl, bw, bh, ul, uw, uh, )
);
Wenn Sie auf OK klicken, druckt die Funktion Show() die Werte, die der Benutzer im Dialogfeld ausgewählt oder angegeben hat, in das JMP-Protokoll aus. Ihre Aufgabe besteht darin, das JSL in diese Funktion Expr() einzufügen, die die angegebenen Werte übernimmt und die Analyse/Grafikerstellung durchführt, die Ihre Anwendung durchführen soll.