Come selezionare le righe in una tablebox JSL e assegnarle 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 la risposta qui con la comunità JMP in modo che anche altri possano trarne vantaggio:
La mia domanda:
Se è possibile, vorrei sapere se posso eseguire quanto segue su un TableBox:
Finestra Gui = Nuova finestra ( "SMS1" ) ;
la scatola = 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 }) ) ;
la scatola << Imposta righe selezionabili ( 1 ) ;
Finestra Gui << Aggiungere ( la scatola ) ;
- Selezionare una riga in un TableBox che soddisfi i criteri seguenti: colonna Lunghezza è più grande 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 Rispondere (Grazie Marco!)
Finestra Gui = Nuova finestra ( "SMS1" ) ;
la scatola = 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 }) ) ;
la scatola << Imposta righe selezionabili ( 1 ) ;
Finestra Gui << Aggiungere ( la scatola ) ;
dt = la scatola << Trasforma in tabella dati ( invisibile ) ;
rs = dt << Ottieni righe dove ( : Lunghezza > : Profondità ) ;
la scatola << Imposta le righe selezionate ( rs ) ;
la scatola << Imposta il colore della riga selezionato ( "rosso" ) ;
Spero che questo aiuti.Per favore, fammi sapere quali altre domande hai.
Saluti
Marco
Re: Come selezionare le righe in una tablebox JSL e assegnarle un colore specificoSupporto tecnico Rispondere (Grazie Marco!)
Finestra Gui = Nuova finestra ( "SMS1" ) ;
la scatola = 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 }) ) ;
la scatola << Imposta righe selezionabili ( 1 ) ;
Finestra Gui << Aggiungere ( la scatola ) ;
dt = la scatola << Trasforma in tabella dati ( invisibile ) ;
rs = dt << Ottieni righe dove ( : Lunghezza > : Profondità ) ;
la scatola << Imposta le righe selezionate ( rs ) ;
la scatola << Imposta il colore della riga selezionato ( "rosso" ) ;
Spero che questo aiuti.Per favore, fammi sapere quali altre domande hai.
Saluti
Marco
Re: Come selezionare le righe in una tablebox JSL e assegnarle un colore specificoCiao Mark,
Ho provato il tuo suggerimento, ma perdo la colorazione nel processo. Ecco il comportamento che sto notando, fatemi sapere che potete riprodurlo anche voi (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 = Nuova Finestra("SMS1");
theBox = TableBox(
stringColBox("Stato",{"Florida", "Texas", "Principale", "California"}),
NumeroColBox("Larghezza",{45,66,88,13}),
NumeroColBox("Lunghezza",{67,34,1,78}),
NumberColBox("Profondità",{13,65,32,56}));
theBox << Imposta righe selezionabili(1);
GuiWindow << Append(theBox);
dt = theBox << Crea nella tabella dei dati (invisibile);
rs = dt << Ottieni righe dove( :Length > :Depth );
theBox << Imposta le righe selezionate ( rs );
theBox << Imposta il colore della riga selezionata ("red");
theBox << Imposta righe selezionabili(0);
Se posiziono la riga in un altro punto 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 = Nuova Finestra("SMS1");
theBox = TableBox(
stringColBox("Stato",{"Florida", "Texas", "Principale", "California"}),
NumeroColBox("Larghezza",{45,66,88,13}),
NumeroColBox("Lunghezza",{67,34,1,78}),
NumberColBox("Profondità",{13,65,32,56}));
theBox << Imposta righe selezionabili(1);
GuiWindow << Append(theBox);
theBox << Imposta righe selezionabili(0);
dt = theBox << Crea nella tabella dei dati (invisibile);
rs = dt << Ottieni righe dove( :Length > :Depth );
theBox << Imposta le righe selezionate ( rs );
theBox << Imposta il colore della riga selezionata ("red");
Re: Come selezionare le righe in una tablebox JSL e assegnarle un colore specificoQuesto script lascia la casella della tabella aperta a un'ulteriore selezione da parte dell'utente fino a quando non arriva. Se tutto ciò che vuoi fare è evidenziare casi particolari nella tabella, segui questo messaggio:
la scatola << Imposta righe selezionabili ( 0 ) ;
Non perderai la colorazione.