JSL Recupera frame selezionato<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />CIAO,
Sto cercando di creare uno script JMP che aggiunga uno script grafico a una piattaforma preesistente, in base a una selezione dell'utente.Come posso recuperare il riferimento a un frame box selezionato dall'utente?C'è un modo migliore per farlo?Sto usando JMP10.
Grazie!
I nomi predefiniti sono qui ( 1 ) ;
// Esempio.
bigClass = Aprire ( "$SAMPLE_DATA/Classe grande.jmp" ) ;
biv = bigClass << Bivariato ( Y ( : peso ) , X ( : altezza ) ) ;
// L'utente selezionerà uno o più frame box.
rbiv = biv << Rapporto ;
sel = rbiv [ FrameBox ( 1 )] ;
sel << Selezionare ;
// Aiuto richiesto:
// JMP recupererà il riferimento al frame box selezionato e aggiungerà uno script grafico.
// JMP aggiungerà qualcosa al frame box selezionato...
sel << Aggiungi script grafico ( Testo ( Centro giustificato , { 55 , 160 } , "CIAO!") ; ) ;
sel << Deseleziona ; // JMP restituirà il grafico all'utente.
Re: JSL Recupera Frame selezionatoGrazie Ian.
Re: JSL Recupera Frame selezionatoNon hai bisogno di 'rwin' poiché 'win' è già un report. Quindi le ultime righe dovrebbero essere:
// Seleziona vittoria.
vincita << Mostra struttura ad albero ; // Funziona.
selwin = vincita [ FrameBox ( 1 )] ;
selwin << Selezionare ;
Aspettare ( 2 ) ;
selwin << Deseleziona ;
Re: JSL Recupera Frame selezionatoSono in grado di selezionare la finestra corrente e mostrare una struttura ad albero, ma non riesco ad accedere ai frame box al suo interno.Un esempio è sotto.Qualche idea?
// Esempio.
I nomi predefiniti sono qui ( 1 ) ;
// Esegui l'intero blocco JSL in una volta, da qui...
bigClass = Aprire ( "$SAMPLE_DATA/Classe grande.jmp" ) ;
biv = bigClass << Bivariato ( Y ( : peso ) , X ( : altezza ) ) ;
Aspettare ( 2 ) ;
vincita = Finestra corrente () ;
// ...a qui.
// Aggiungi testo a biv.
biv << Mostra struttura ad albero ;
rbiv = biv << Rapporto ;
sel = rbiv [ FrameBox ( 1 )] ;
sel << Selezionare ; // L'utente selezionerà uno o più frame box.
sel << Aggiungi script grafico ( "Indietro" , Testo ( Centro giustificato , { 55 , 160 } , "CIAO!") ) ; // Aggiungi script.
sel << Deseleziona ;
// Prova a selezionare win.
vincita << Mostra struttura ad albero ; // Funziona.
rwin = vincita << Rapporto ;
selwin = rwin [ FrameBox ( 1 )] ;
selwin << Selezionare ; // Questo non funziona.Perché no?
selwin << Deseleziona ;
Re: JSL Recupera Frame selezionatoCiao PMroz,
Scusa se non sono stato chiaro.
Sto cercando di creare un componente aggiuntivo JMP che consenta all'utente di aggiungere uno script grafico preimpostato a un grafico che ha già creato.Lo script grafico può essere necessario per diversi tipi di grafici, quindi non è pratico creare uno script completo per il grafico e includere la parte grafica; il numero di opzioni necessarie è eccessivo.Inoltre, l'utente finale potrebbe non avere la familiarità con JMP necessaria per manipolare la struttura ad albero.
Spero che l'utente selezioni una cornice utilizzando lo strumento di selezione e quindi esegua il componente aggiuntivo per aggiungere lo script grafico.Il pezzo mancante del mio puzzle è portare JMP a rilevare il frame box selezionato dall'utente.Una volta ottenuto il riferimento al frame box, posso aggiungere la grafica.
È possibile per JMP rilevare quale frame box (o grafico) è stato selezionato?
Come ultima risorsa, posso chiedere all'utente finale di aggiungere manualmente lo script grafico utilizzando le proprietà Personalizza grafico, ma spero in una soluzione più elegante.
Re: JSL Recupera Frame selezionatoSÌ.Puoi aggiungere questa istruzione al codice sopra:
nw << mostra la struttura ad albero ;
Che produrrà l'output della struttura ad albero.Puoi sfogliare questo per la cornice necessaria.

Re: JSL Recupera Frame selezionatoCiao PMroz,
Grazie per l'input.Se possibile, vorrei modificare lo script grafico dopo che il grafico è stato creato.E' possibile recuperare il riferimento ad un frame box selezionato?
Re: JSL Recupera Frame selezionatoInvece di seguire il percorso del rapporto e scavare nella struttura ad albero, puoi anche semplicemente creare una finestra e aggiungere quello che vuoi.Per esempio:
I nomi predefiniti sono qui ( 1 ) ;
// Esempio.
bigClass = Aprire ( "$SAMPLE_DATA/Classe grande.jmp" ) ;
nw = nuova finestra ( "Esempio" ,
biv = bigClass << Bivariato ( Y ( : peso ) , X ( : altezza ) ) ,
tb = Casella di testo ( "CIAO!" )
) ;
tb << impostare la larghezza ( 500 ) ;
tb << Giustifica il testo ( centro ) ;