Wie könnte ich Anzeigefelder in einem modalen Fenster basierend auf der Radiobox-Auswahl erstellen?Mein Code sieht wie folgt aus. Er funktioniert gut, wenn ich nacheinander auf Option 1 und 2 klicke, aber wenn ich ständig auf Option 1 klicke, werden mehrere Listenfelder generiert, was meine Benutzer verwirren würde. Wie könnte ich den Code optimieren? Vielen Dank.
Weitere zwei Fragen sind:
1. Wenn ich ein Bedienfeldfeld lösche, wird dann auch das umrahmte Feld (wie das Textfeld) gelöscht oder einfach nicht angezeigt?
2. Wie kann ich die Hierarchie eines modalen Fensters ermitteln?
dt = Current Data Table();
If( Is Empty( dt ),
Stop(),
nc = N Col( dt )
);
openDTs = {};
For( i = 1, i <= N Table(), i++,
Insert Into( openDTs, Data Table( i ) << getname )
);
tableSelBox = Expr(
//Panel Box( "Select Limit Table",
lbtableSel = List Box( openDTs, width( 150 ), nlines( 6 ), maxselected( 1 ), ),
//),
);
nw = New Window( "Auto Plot",
modal,
hb = H List Box(
V List Box(
Panel Box( "Mode Selection",
Spacer Box( size( 100, 0 ) ),
rbMethod = Radio Box(
{"With Current Limit", "Without Current Limit"},
rbSel = rbMethod << get selected;
dbAfterpb = colSelLstBox << Next();
If( rbSel == "With Current Limit",
pb << Sib Append( tableSelBox ),
);
If( rbSel == "Without Current Limit",
dbAfterpb << Delete;
lbtableSel << Delete
),
),
),
Panel Box( "Action",
Spacer Box( size( 100, 0 ) ),
okBb = Button Box( "OK", Stop() ),
cancelBb = Button Box( "Cancel", Stop() ),
),
),
pb = Panel Box( "Select Columns",
colSelLstBox = Filter Col Selector( dt, nlines( Min( nc, 13 ) ) ),
),
pb << Sib Append( tableSelBox ),
),
);

Automatisierung und SkripterstellungBetreff: Wie könnte ich Anzeigefelder in einem modalen Fenster basierend auf der Radiobox-Auswahl erstellen?Was soll der Benutzer Ihrer Meinung nach tun können?
1. Wenn Sie die darin enthaltenen Panel Box()-Objekte löschen, sollten diese ebenfalls gelöscht werden (verwenden Sie <
2. Welche Hierarchie? Wenn Sie die Baumstruktur oder die Eigenschaften sehen möchten, ist das vorübergehende Entfernen des Modals die einfachste Option
Betreff: Wie könnte ich Anzeigefelder in einem modalen Fenster basierend auf der Radiobox-Auswahl erstellen?Vielleicht ist das nur meine Meinung, aber es wäre viel einfacher, Ihr Problem zu verstehen, wenn Sie eine zu Ihrem Skript gehörende Tabelle freigeben könnten.
Betreff: Wie könnte ich Anzeigefelder in einem modalen Fenster basierend auf der Radiobox-Auswahl erstellen?Wenn ich auf die Option „Mit Strombegrenzung“ klicke, wird rechts im Bereich „Spalten auswählen“ ein neues Listenfeld angezeigt. Wenn ich auf die Option „Ohne Strombegrenzung“ klicke, wird das Listenfeld gelöscht. Wenn ich auf Option 1 klicke – -> Option 2 -> Option 1 -> Option 2, es funktioniert gut. Wenn ich jedoch mehrmals auf Option 1 klicke, werden mehrere Listenfelder angezeigt, was meinen Benutzer verwirren würde. Das Bild unten zeigt, dass 4 Listenfelder generiert werden, nachdem ich viermal auf „Option 1“ geklickt habe.

Betreff: Wie könnte ich Anzeigefelder in einem modalen Fenster basierend auf der Radiobox-Auswahl erstellen?Tut mir leid, dass ich Sie verwirrt habe. Das Problem, auf das ich gestoßen bin, hängt nicht mit einer bestimmten Tabelle zusammen, sondern mit einer Frage zur UI-Entwicklung.
Ich meine damit, wie man das Optionsfeld zum Generieren von Anzeigefeldern verwendet, z. B. wenn Sie auf Option 1 klicken, um ein Listenfeld A zu generieren, Option 2, um ein Listenfeld B zu generieren, und Option 3, um nichts zu tun. Wenn ich außerdem auf Option 1 und dann auf Option 2 klicke, wird das Listenfeld A gelöscht und ein neues Listenfeld B angezeigt.
In meinem Code funktionieren alle Dinge gut Wenn ich auf Option 1 -> Option 2 -> Option 1 -> Option 2... klicke, aber wenn ich mehrmals auf Option 1 klicke, werden mehrere Listenfelder angezeigt, was meinen Benutzer verwirren würde. Unten ist das Bild zeigt, dass 4 Listenfelder generiert werden, nachdem ich viermal auf „Option 1“ geklickt habe.

Betreff: Wie könnte ich Anzeigefelder in einem modalen Fenster basierend auf der Radiobox-Auswahl erstellen?Sie können möglicherweise eine zusätzliche Prüfung hinzufügen, wenn „Mit aktuellem Limit“ die Option ist, um zu prüfen, ob lbtableSel leer ist
If(rbSel == "With Current Limit" & is empty(lbtableSel),
Betreff: Wie könnte ich Anzeigefelder in einem modalen Fenster basierend auf der Radiobox-Auswahl erstellen?Danke, Ihr Code funktioniert gut im nichtmodalen Modus.
Wenn ich im modalen Modus auf Option 1 -> Option 2 -> Option 1 klicke, wird das Listenfeld nicht angezeigt. Wenn ich jedoch die zusätzliche Option 2 -> Option 1 ausprobiert habe, wird es angezeigt! Basierend auf meiner Untersuchung habe ich herausgefunden, dass hinter dem Panel colSelLstBox ein nicht sichtbares Listenfeld zu sein scheint. Ich kann es nicht aufrufen und löschen, aber nachdem Option 2 zweimal ausgeführt wurde, wird es endgültig gelöscht, sodass Option 1 funktionieren kann. So interessant....
Meine letzte Lösung im modalen Modus besteht darin, ein Abstandsfeld der Größe (0,0) hinzuzufügen, dann kann ich den Handler davon abrufen, beurteilen, ob es existiert, löschen oder generieren.