Von Zeit zu Zeit wäre es schön, Benutzeroberflächen zu erstellen, die es dem Benutzer ermöglichen, die zu verwendenden Datentabellen zu ändern (derzeit besteht meine Lösung hierfür darin, „nie“ eine Option zum Ändern von Datentabellen hinzuzufügen). Meines Wissens nach müssen Sie derzeit die Filter-Spaltenauswahl und das Spalten-Listenfeld neu erstellen, um die von ihnen verwendeten Datentabellen zu ändern.
Das ist es, was Sie meiner Meinung nach tun müssen:
Mehr sehen...
So möchte ich es machen:
Mehr sehen...
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Probe.jmp", invisible);
dt1 = Open("$SAMPLE_DATA/Big Class.jmp", invisible);
dt2 = Open("$SAMPLE_DATA/Semiconductor Capability.jmp", invisible);
close_dts = Expr(
Try(Close(dt, no save));
Try(Close(dt1, no save));
Try(Close(dt2, no save));
);
change_table = Expr(
cur_table = (lb << get selected)[1];
fcs << Set Data Table(cur_table);
clb << Set Data Table(cur_table);
);
nw = New Window("Col List Box Example",
H List Box(
lb = List Box(Get Data Table List(),
change_table
),
fcs = Filter Col Selector(Datatable(dt)),
clb = Col List Box(Datatable(dt), all, numeric, max selected(1), nlines(5), <<MODELING type=""></MODELING>
Namen standardmäßig hier(1); dt = Open("$SAMPLE_DATA/Probe.jmp", unsichtbar); dt1 = Open("$SAMPLE_DATA/Big Class.jmp", unsichtbar); dt2 = Open("$SAMPLE_DATA/Semiconductor Capability.jmp", unsichtbar); close_dts = Expr( Try(Close(dt, no save)); Try(Close(dt1, no save)); Try(Close(dt2, no save)); ); change_table = Expr( cur_table = (lb << get selected)[1]; fcs << Set Data Table(cur_table); clb << Set Data Table(cur_table); ); nw = New Window("Col List Box Beispiel", H List Box( lb = List Box(Get Data Table List(), change_table ), fcs = Filter Col Selector(Datatable(dt)), clb = Col List Box(Datatable (dt), all, numeric, max selected(1), nlines(5), <
Dies würde den Bedarf an unnötigen Anzeigefeldern eliminieren und den Referenzwechsel wesentlich einfacher machen.