Ottieni una nuova finestra con pulsanti di scelta esistentiCiao comunità JMP,
Sono nuovo di JMP. Ho un dubbio. Quindi di seguito è allegato il mio codice, quando seleziono il pulsante della casella combinata e seleziono una forma e clicco su OK, dovrebbe apparire una nuova finestra che evidenzia solo le colonne richieste. Ad esempio, se seleziono la forma a L da ShapeChoice, dovrebbe apparire una nuova finestra con tutti i dati HL, VL, HH, VH, BL, UL, ecc., ma dovrebbe dare solo l'opzione di immettere i valori solo per HL, HW, HH, VL, VW e VH. Potete aiutarmi? Grazie in anticipo.
Names Default To Here( 1 );
dlg = New Window("Dimensions",
<<MODAL></MODAL><LINGO-LABS id="lingo-labs-824980" slang="en-US" mode="CREATE"><LINGO-LABEL>Analisi e modellazione dei dati di base</LINGO-LABEL><LINGO-LABEL>Accesso ai dati</LINGO-LABEL><LINGO-LABEL>Esplorazione e visualizzazione dei dati</LINGO-LABEL><LINGO-LABEL>Progettazione degli esperimenti</LINGO-LABEL><LINGO-LABEL>Finestre</LINGO-LABEL></LINGO-LABS>Re: Ottieni una nuova finestra con pulsanti di scelta esistentiPotresti voler dare un'occhiata a IfBox. Questo post recente potrebbe anche darti qualche idea su come nascondere\mostrare efficacemente gli elementi GUI?
Re: Ottieni una nuova finestra con pulsanti di scelta esistentiGrazie per l'aiuto, ma ho anche bisogno di un'opzione di input utente.
Re: Ottieni una nuova finestra con pulsanti di scelta esistentiQuindi potresti usare le caselle If impostate su 0/1 in base alla selezione dell'utente?
Re: Ottieni una nuova finestra con pulsanti di scelta esistentiNon ho capito. Mi dispiace ma sono nuovo in questo. Quindi puoi spiegarmelo? Grazie!
Re: Ottieni una nuova finestra con pulsanti di scelta esistentiDevo prima capire meglio cosa vuoi avere. Quando l'utente seleziona la forma, quali caselle di modifica devono apparire?
Re: Ottieni una nuova finestra con pulsanti di scelta esistentiEcco l'approccio che adotterei
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>Re: Ottieni una nuova finestra con pulsanti di scelta esistentiLo script di soluzione è molto utile. Ora sto anche lavorando al problema della raccolta di informazioni utente. Uno degli elementi che sto cercando di raccogliere è un elenco di lotti basato su una tabella dati JMP. Sono sicuro che ci sia un modo migliore per farlo, ma ho aggiunto una nuova sezione allo script di soluzione che consente all'utente di scegliere una directory, un file e una colonna contenenti le informazioni. Qualche consiglio per migliorare questo? Inoltre, non ho visto il metodo runtherest = Expr(); Ho provato a digitare alcune semplici azioni di script nello spazio tra le parentesi, ma non sono riuscito a farlo eseguire. Cosa mi sfugge?
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> Re: Ottieni una nuova finestra con pulsanti di scelta esistentiCi sono molti modi per selezionare una tabella dati per ottenere il tuo elenco di lotti. Il tuo metodo sembra funzionare. Sono un po' confuso dal tuo commento sull'aggiornamento delle informazioni.
Per quanto riguarda "runtherest", qualsiasi codice che inserisci all'interno di Expr() verrà eseguito quando clicchi sul pulsante OK. Prova a sostituire la sezione con
runtherest = Expr(
Show( shapechoice, combochoice, hl, hw, hh, vl, vw, vh, bl, bw, bh, ul, uw, uh, )
);
Quando clicchi su OK, la funzione Show() stamperà nel log JMP i valori che l'utente ha selezionato o specificato dalla finestra di dialogo. Il tuo compito sarà quello di aggiungere il JSL in questa funzione Expr() che prenderà i valori specificati ed eseguirà qualsiasi analisi/rappresentazione grafica che la tua applicazione intende fare.