Aiuto con le finestre modaliCiao,
Sto cercando di impostare le finestre di dialogo negli script esistenti, il primo è la posizione delle intestazioni nei dati che sto importando.
Capisco quanto segue mi darà una bella casella di visualizzazione:
Headstart = New Window( "Set Header Start Row Value",
<< Modal,
<< Return Result,
Text Box ("Please advise the row on which the header starts"),
variablebox = Number Edit Box ( 2 ),
Button Box ( "OK "),
Button Box ( "Cancel" )
);
Il prossimo pezzo di sintassi scrive la risposta dell'utente a Headstart
Write ( Headstart ["variablebox"]);
Come posso effettivamente utilizzare il valore memorizzato in Headstart, ho provato quanto segue:
//dt=open(fileopen,private);
dt = Open(
fileopen,
Worksheets( "Lin" ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( "Headstart" ),
Data Starts on Row( 37 ),
Data Starts on Column( 1 ),
Data Ends on Row( 48 ),
Data Ends on Column( 15 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
),
);
Datasource = fileopen;
Ri: Aiuto con le finestre modaliCiao gzmorgan0,
Finalmente ho avuto la possibilità di farlo oggi, ha funzionato a meraviglia, grazie mille, sono nuovo nella programmazione in JMP e le persone come te stanno rendendo l'esperienza di apprendimento molto più semplice e molto meno frustrante, non posso grazie abbastanza.
Grazie ancora
Ri: Aiuto con le finestre modaliCiao gzmorgan,
Non ho avuto il tempo di guardarlo oggi, lo guarderò domani.
Grazie mille per la risposta.
Ri: Aiuto con le finestre modaliQuesto approccio potrebbe essere un po' più facile da capire.Inserisci le azioni che desideri vengano eseguite nei pulsanti OK e Annulla.
hw = New Window( "Set Header Start Row Value", <<MODAL></MODAL>
Ri: Aiuto con le finestre modaliTopolino,
Se ho inserito 3, show(Headstart) restituisce l'elenco {variablebox = 3, Button( 1 )}. Ad eccezione del pulsante, ogni altro elemento nell'elenco è un'assegnazione.
Ecco due modi per ottenere i valori da una finestra di dialogo modale, <
- nomelista["boxname"] quindi Headstart[ "variablebox" ] restituisce 3.
- Se il pulsante è 1, rimuovi l'ultimo elemento nell'elenco e eval list(listname), ogni assegnazione viene eseguita e puoi fare riferimento al nome della variabilebox.
Di seguito è riportato un estratto dallo script 7_SimpleModalDialog.jsl, uno degli script scritti per JSL Companion, Applicazioni del linguaggio di scripting JMP, 2a edizione. La prima istruzione show utilizza la sintassi n. 2 e la seconda show è la sintassi che puoi utilizzare dopo aver rimosso il pulsante ed eval list().
Esistono anche altri metodi.
Quindi per il tuo esempio, puoi usare
Headers Start on Row( Headstart["variablebox"] )
oppure utilizzare un codice simile all'esempio seguente.
Names Default to here(1);
usr_info = New Window("Query", << Modal, <<RETURN result=""></RETURN>
Re: Aiuto con le finestre modaliCiao,
Sto cercando di capire perché la struttura JMP Button Box("OK") degli esempi funziona in questo modo.
È un risultato predefinito che se il testo è "OK" allora "Pulsante"=1 e qualsiasi altro testo allora "Pulsante"=-1?
Il mio codice si basa sulla guida JMP ed è simile al codice gzmorgan di questa discussione.
LineupBox( NCol(1), ButtonBox("OK"), ButtonBox("Cancel"))
If(usr_info["Button"]== -1,
Caption("Aborting..."); Wait(3); Caption(Remove); Throw());
Re: Aiuto con le finestre modaliDalla Guida in linea di JMP
Nota: Le finestre modali richiedono almeno un pulsante per chiudere la finestra. Puoi usareOK, SÌ, NO, OCancellareper etichettare i pulsanti della finestra modale. Se non si include almeno uno di questi pulsanti in una finestra modale, JMP aggiunge unOKpulsante.
La funzionalità integrata di una finestra di visualizzazione modale restituisce +1 per "OK" o "Sì" e -1 per "Annulla" e "No"