Rastersteuerung in JMP-Dialogfeldern?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo Leute,
Hat jemand herausgefunden, wie man eine Art Rastersteuerung in JMP-Dialogfeldern durchführt? Etwas ähnlich wie SCgrid in VB? Ich möchte eine scrollbare Tabelle mit anklickbaren Steuerelementen anzeigen.
Vielen Dank,
Peter
Re: Grid Control in JMP-Dialogfeldern?cool !!!
Re: Grid Control in JMP-Dialogfeldern?Hier ist ein alternativer Ansatz, bei dem eine mit BorderBoxes, MouseBoxes und TextBoxes gefüllte LineupBox wie eine Tabelle verwendet wird. Die MouseBox kann die anklickbaren Steuerelemente bereitstellen, und die BorderBox bietet die Möglichkeit, die Tabellenzellen einzufärben.
Re: Grid Control in JMP-Dialogfeldern?Vielen Dank MS! Ich nahm Ihren Code und änderte ihn leicht, so dass jede Schaltfläche das "Los" -Symbol ist:
dt = öffnen ( "$ sample_data \ Car Physical Data.jmp" ) ;
aktuelle Datentabelle ( dt ) ;
model_list = : Modell << Werte erhalten ;
Länderliste = : Land << Werte erhalten ;
type_list = : Art << Werte erhalten ;
Gewichts Liste = : Gewicht << Werte erhalten ;
turn_list = : Wendekreis << Werte erhalten ;
disp_list = : Verschiebung << Werte erhalten ;
Pferdeliste = : Pferdestärke << Werte erhalten ;
gas_list = : Gasbehältergröße << Werte erhalten ;
Aktionsliste = {} ;
bb_text = "" ;
zum ( ich = 1 . ich <= nrows ( dt ) . ich ++
bc = "b" || verkohlen ( ich ) ;
bb_text = bb_text || bc || "= Schaltflächenfeld (\!" \! ", drucken (\!" ") || bc || "\!"); ) " ;
) ;
col_box_expr = "col box (\!" Action \! "") || bb_text || ") ;
Neues Fenster ( "Autos" .
tb = Tischbox (
eval ( analysieren ( col_box_expr )) .
String Col Box ( "Modell" . model_list ) .
String Col Box ( "Land" . country_list ) .
String Col Box ( "Art" . type_list ) .
Nummer Col Box ( "Gewicht" . Gewichts Liste ) .
Plot Col Box ( "" . Gewichts Liste ) .
Nummer Col Box ( "Wendekreis" . turn_list ) .
Nummer Col Box ( "Verschiebung" . disp_list ) .
Nummer Col Box ( "PS" . Pferdeliste ) .
Nummer Col Box ( "Gastankgröße" . gas_list ) .
Plot Col Box ( "" . gas_list ) .
)
) ;
tb << Bildlauffähig einstellen ( 25 . 0 ) ;
tb << Tischstil ( abgeschrägt ) ;
zum ( ich = 1 . ich <= nrows ( dt ) . ich ++
bc = "b" || verkohlen ( ich ) ;
button_expr = bc || "<< set icon (\!" Go \! ")" ;
eval ( analysieren ( button_expr )) ;
) ;
Sehr cooles Ergebnis. Durch Klicken auf eine Schaltfläche wird angezeigt, welche Taste gedrückt wurde.

Re: Grid Control in JMP-Dialogfeldern?Col Box ähnelt Gliederungsbox in ihren Argumenten. Sie könnten die Liste ähnlich wie Peter aufbauen:
action_col = col box ("Aktion");
für (i = 1, i <= Reihen (dt), i ++,
bb_text = "action_col << anhängen (Schaltflächenfeld (\!" Öffnen \! ", Drucken (i)))";
eval (parse (bb_text));
);
Jetzt haben Sie die Spalte, die Sie der Tabelle hinzufügen können.
Re: Grid Control in JMP-Dialogfeldern?Gerade Aktionsliste [1] funktioniert aber nicht die ganze Liste. Daher scheint Col Box () nicht in der Lage zu sein, eine Liste von Anzeigefeldern aufzulösen, was normalerweise bedeutet, dass eine riesige Ausdrucksfolge erstellt und analysiert werden muss.
dt = öffnen ( "$ sample_data \ Car Physical Data.jmp" ) ;
aktuelle Datentabelle ( dt ) ;
model_list = : Modell << Werte erhalten ;
Länderliste = : Land << Werte erhalten ;
type_list = : Art << Werte erhalten ;
Gewichts Liste = : Gewicht << Werte erhalten ;
turn_list = : Wendekreis << Werte erhalten ;
disp_list = : Verschiebung << Werte erhalten ;
Pferdeliste = : Pferdestärke << Werte erhalten ;
gas_list = : Gasbehältergröße << Werte erhalten ;
bb_text = "Schaltflächenfeld (\!" Öffnen \! ", Drucken (1))" ;;
zum ( ich = 2 . ich <= nrows ( dt ) . ich ++
bb_text = bb_text || "," || verkohlen ( Ersatz ( nameexpr ( Schaltflächenfeld ( "Öffnen" . drucken ( Ausdruck ( ich )))) . Ausdruck ( ich ) . ich )) ;
) ;
col_box = "col box (\!" Action \! "") || bb_text || ") ;
Neues Fenster ( "Autos" .
tb = Tischbox (
eval ( analysieren ( col_box )) .
String Col Box ( "Modell" . model_list ) .
String Col Box ( "Land" . country_list ) .
String Col Box ( "Art" . type_list ) .
Nummer Col Box ( "Gewicht" . Gewichts Liste ) .
Plot Col Box ( "" . Gewichts Liste ) .
Nummer Col Box ( "Wendekreis" . turn_list ) .
Nummer Col Box ( "Verschiebung" . disp_list ) .
Nummer Col Box ( "PS" . Pferdeliste ) .
Nummer Col Box ( "Gastankgröße" . gas_list ) .
Plot Col Box ( "" . gas_list ) .
)
) ;
tb << Bildlauffähig einstellen ( 25 . 0 ) ;
tb << Tischstil ( abgeschrägt ) ;
Re: Grid Control in JMP-Dialogfeldern?Fast dort. Wußte nichts von col box, das nirgendwo dokumentiert ist, außer einer kurzen Erwähnung in Hilfe> Skriptindex. Vielleicht kann mir jemand helfen, dieses Beispiel zum Laufen zu bringen:
dt = öffnen ( "$ sample_data \ Car Physical Data.jmp" ) ;
aktuelle Datentabelle ( dt ) ;
model_list = : Modell << Werte erhalten ;
Länderliste = : Land << Werte erhalten ;
type_list = : Art << Werte erhalten ;
Gewichts Liste = : Gewicht << Werte erhalten ;
turn_list = : Wendekreis << Werte erhalten ;
disp_list = : Verschiebung << Werte erhalten ;
Pferdeliste = : Pferdestärke << Werte erhalten ;
gas_list = : Gasbehältergröße << Werte erhalten ;
Aktionsliste = {} ;
zum ( ich = 1 . ich <= nrows ( dt ) . ich ++
bb_text = "Aktionsliste = Schaltflächenfeld (\! "Öffnen \!", Drucken (i)) ;
eval ( analysieren ( bb_text )) ;
) ;
Neues Fenster ( "Autos" .
tb = Tischbox (
Col-Box ( "Aktion" . Aktionsliste ) .
String Col Box ( "Modell" . model_list ) .
String Col Box ( "Land" . country_list ) .
String Col Box ( "Art" . type_list ) .
Nummer Col Box ( "Gewicht" . Gewichts Liste ) .
Plot Col Box ( "" . Gewichts Liste ) .
Nummer Col Box ( "Wendekreis" . turn_list ) .
Nummer Col Box ( "Verschiebung" . disp_list ) .
Nummer Col Box ( "PS" . Pferdeliste ) .
Nummer Col Box ( "Gastankgröße" . gas_list ) .
Plot Col Box ( "" . gas_list ) .
)
) ;
tb << Bildlauffähig einstellen ( 25 . 0 ) ;
tb << Tischstil ( abgeschrägt ) ;
Re: Grid Control in JMP-Dialogfeldern?In JMP 10 enthält Table Box eine Set Scrollable-Meldung und Col Box, eine Spalte mit einer Anzeigetabelle, in der jede Zeile ein anderes Anzeigefeld Ihrer Wahl ist.
Eine andere Option, die ich nicht ausprobiert habe, ist das Platzieren einer Aufstellungsbox in einer Bildlaufbox.