Wie kann ich eine Panel-Box live aktualisieren?Hallo,
Ich versuche, ein Skript für ein Benutzereingabefeld zu erstellen, in dem die verfügbaren Bearbeitungsfelder für Zahlenspalten davon abhängen, was der Benutzer für das Optionsfeld auswählt. Das Fenster wird jedoch nicht wie erwartet aktualisiert:
Names Default To Here( 1 );
SampleConfig = "2 x 2";
New Window( "Select Sample Configuration",
<<MODAL></MODAL>
Irgendwelche Vorschläge, was ich falsch mache?
Danke,
Dylan
Betreff: Wie kann ich eine Panel-Box live aktualisieren?Danke Dan, das ist sehr hilfreich!
Am besten,
DylanBetreff: Wie kann ich eine Panel-Box live aktualisieren?Hier ist ein Beispiel, bei dem der Inhalt dynamisch hinzugefügt und entfernt wird.Ich habe auch ein Beispiel hinzugefügt, wie man die Ausgabe aus dem modalen Dialog erhält.Im ersten Beispiel mit IfBox könnte dies durch die Verwendung von <<
Names Default To Here( 1 );
ui2x2 = Expr(
H List Box(
col_1 = Number Col Edit Box( , [1, 3] ),
col_2 = Number Col Edit Box( , [2, 4] ),
)
);
ui3x3 = Expr(
H List Box(
col_1 = Number Col Edit Box( , [1, 4, 7] ),
col_2 = Number Col Edit Box( , [2, 5, 8] ),
col_3 = Number Col Edit Box( , [3, 6, 9] )
)
);
results = New Namespace();
results:SampleConfig = "2 x 2";
w = New Window( "Select Sample Configuration",
<<MODAL></MODAL>
Betreff: Wie kann ich eine Panel-Box live aktualisieren?Danke, Dan! Ist der einzige Vorteil der zweiten Methode, wenn Sie von Anfang an nicht wussten, welche verschiedenen Konfigurationen möglich sind (z. B. wenn der Benutzer eine NXM-Matrix eingegeben hat), oder gibt es andere Vor-/Nachteile? Ist es zu viel verlangt, auch für die zweite Methode ein Beispiel zu nennen?
Vielen Dank für Ihre Hilfe,
Dylan
Betreff: Wie kann ich eine Panel-Box live aktualisieren?Ihre If()-Anweisung zur Auswahl der anzuzeigenden Schnittstelle wird nur einmal ausgeführt, wenn das Fenster erstellt wird.Eine Möglichkeit, an das zu kommen, was Sie benötigen, besteht darin, alle Felder im Voraus zu erstellen und sie bedingt anzuzeigen (siehe unten).Die Alternative wäre, die Boxen dynamisch über die Radio-Box-Callback-Funktion zu erstellen und zu zerstören.
Names Default To Here( 1 );
SampleConfig = "2 x 2";
New Window( "Select Sample Configuration",
<<MODAL></MODAL>