Come selezionare le righe in una tablebox JSL e assegnare loro un colore specifico<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ho inserito un ticket di supporto tecnico per ottenere la risposta a questa semplice domanda, poiché non ci sono altri post rilevanti per questo problema. Ho deciso di condividere qui la risposta con la community di JMP in modo che anche altri possano trarne vantaggio:
La mia domanda:
Se è possibile, vorrei sapere se posso eseguire quanto segue su un TableBox:
GuiWindow = Nuova finestra ( "SMS1" ) ;
la scatola = TableBox (
stringColBox ( "Stato" , { "Florida" , "Texas" , "Principale" , "California" }) ,
NumberColBox ( "Larghezza" , { 45 , 66 , 88 , 13 }) ,
NumberColBox ( "Lunghezza" , { 67 , 34 , 1 , 78 }) ,
NumberColBox ( "Profondità" , { 13 , 65 , 32 , 56 }) ) ;
la scatola << Imposta righe selezionabili ( 1 ) ;
GuiWindow << Aggiungere ( la scatola ) ;
- Selezionare una riga in un TableBox che soddisfi i seguenti criteri: colonna Lunghezza è maggiore di Colonna Profondità
- In questo esempio, le righe selezionate dovrebbero essere: Riga 1 (Florida) e Riga 4 (California)
- Cambia il colore della riga in Rosso.
Supporto tecnico risposta (Grazie Marco!)
GuiWindow = Nuova finestra ( "SMS1" ) ;
la scatola = TableBox (
stringColBox ( "Stato" , { "Florida" , "Texas" , "Principale" , "California" }) ,
NumberColBox ( "Larghezza" , { 45 , 66 , 88 , 13 }) ,
NumberColBox ( "Lunghezza" , { 67 , 34 , 1 , 78 }) ,
NumberColBox ( "Profondità" , { 13 , 65 , 32 , 56 }) ) ;
la scatola << Imposta righe selezionabili ( 1 ) ;
GuiWindow << Aggiungere ( la scatola ) ;
dt = la scatola << Trasforma in tabella dati ( invisibile ) ;
RS = dt << Ottieni righe dove ( : Lunghezza > : Profondità ) ;
la scatola << Imposta righe selezionate ( RS ) ;
la scatola << Imposta il colore della riga selezionata ( "rosso" ) ;
Spero che aiuti.Per favore fatemi sapere quali altre domande avete.
Saluti
Marcos
Ri: Come selezionare le righe in una tablebox JSL e assegnare loro un colore specificoSupporto tecnico risposta (Grazie Marco!)
GuiWindow = Nuova finestra ( "SMS1" ) ;
la scatola = TableBox (
stringColBox ( "Stato" , { "Florida" , "Texas" , "Principale" , "California" }) ,
NumberColBox ( "Larghezza" , { 45 , 66 , 88 , 13 }) ,
NumberColBox ( "Lunghezza" , { 67 , 34 , 1 , 78 }) ,
NumberColBox ( "Profondità" , { 13 , 65 , 32 , 56 }) ) ;
la scatola << Imposta righe selezionabili ( 1 ) ;
GuiWindow << Aggiungere ( la scatola ) ;
dt = la scatola << Trasforma in tabella dati ( invisibile ) ;
RS = dt << Ottieni righe dove ( : Lunghezza > : Profondità ) ;
la scatola << Imposta righe selezionate ( RS ) ;
la scatola << Imposta il colore della riga selezionata ( "rosso" ) ;
Spero che aiuti.Per favore fatemi sapere quali altre domande avete.
Saluti
Marcos
Ri: Come selezionare le righe in una tablebox JSL e assegnare loro un colore specificoCiao Mark,
Ho provato il tuo suggerimento, ma perdo la colorazione nel processo. Ecco il comportamento che sto notando, fammi sapere che puoi riprodurlo anche tu (sto usando JMP 11 Pro e Standard).
Se metto la linea ' theBox << Imposta righe selezionabili(0);' alla fine perdo la colorazione (le righe non sono più selezionate).
GuiWindow = NuovaFinestra("SMS1");
theBox = TableBox(
stringColBox("Stato",{"Florida", "Texas", "Principale", "California"}),
NumeroColBox("Larghezza",{45,66,88,13}),
NumeroColBox("Lunghezza",{67,34,1,78}),
NumeroColBox("Profondità",{13,65,32,56}));
theBox << Imposta righe selezionabili(1);
GuiWindow << Append(theBox);
dt = theBox << Trasforma in Data Table( invisibile );
rs = dt << Ottieni righe Where( :Length > :Depth );
theBox << Imposta righe selezionate ( rs );
theBox << Imposta il colore della riga selezionata( "red" );
theBox << Imposta righe selezionabili(0);
Se posiziono la riga altrove dopo aver dichiarato l'oggetto theBox, le righe vengono selezionate e colorate come previsto, ma l'utente può selezionare altre righe e quindi modificare l'output iniziale.
GuiWindow = NuovaFinestra("SMS1");
theBox = TableBox(
stringColBox("Stato",{"Florida", "Texas", "Principale", "California"}),
NumeroColBox("Larghezza",{45,66,88,13}),
NumeroColBox("Lunghezza",{67,34,1,78}),
NumeroColBox("Profondità",{13,65,32,56}));
theBox << Imposta righe selezionabili(1);
GuiWindow << Append(theBox);
theBox << Imposta righe selezionabili(0);
dt = theBox << Trasforma in Data Table( invisibile );
rs = dt << Ottieni righe Where( :Length > :Depth );
theBox << Imposta righe selezionate ( rs );
theBox << Imposta il colore della riga selezionata( "red" );
Ri: Come selezionare le righe in una tablebox JSL e assegnare loro un colore specificoQuesto script lascia la casella della tabella aperta a un'ulteriore selezione da parte dell'utente fino in fondo. Se tutto ciò che vuoi fare è evidenziare casi particolari nella tabella, segui questo messaggio:
la scatola << Imposta righe selezionabili ( 0 ) ;
Non perderai la colorazione.