Probleme beim Ausblenden eines Textbearbeitungsfelds in einem OptionsfeldHi,
Ich versuche, ein Optionsfeld zu verwenden, das ein Textbearbeitungsfeld ausblenden/anzeigen soll, aber es funktioniert nicht (siehe beigefügter Code).
Grundsätzlich sollte Auswahl 1 das Textbearbeitungsfeld anzeigen und Auswahl 2 es ausblenden.
Ich sehe mindestens 2 abnormale Verhaltensweisen:
1. Wenn ich mehrmals auf Auswahl 2 klicke, wird das Textbearbeitungsfeld ausgeblendet, dann angezeigt, dann ausgeblendet, dann angezeigt, ... Obwohl es verborgen bleiben sollte
2. Durch Klicken auf CHoice 1 wird das Textbearbeitungsfeld nicht immer angezeigt: Dies hängt vom Status des Textbearbeitungsfelds vor dem Klicken ab ...
Ich glaube, ich übersehe etwas grundlegendes 
MyWindow = New Window( "Test...",
Panel Box( "Info",
rb = Radio Box(
{"Choice 1", "Choice 2"},
<<SET function=""></SET>Betreff: Probleme beim Ausblenden eines Textbearbeitungsfelds in einem OptionsfeldIch bin mir nicht sicher, warum Ihr Code nicht funktioniert hat.Vielleicht, weil Sie kein Argument zum Verstecken geliefert haben?In jedem Fall können Sie den Code folgendermaßen in MyWindow einfügen:
NamesDefaultToHere(1);
MyWindow =
New Window( "Test...",
Panel Box( "Info",
rb = Radio Box({"Choice 1", "Choice 2"},
choice = rb << getSelected;
if (choice == "Choice 1", teb << hide(0),
choice == "Choice 2", teb << hide(1)
);
),
teb = text edit box("Some text to edit")
)
);
Betreff: Probleme beim Ausblenden eines Textbearbeitungsfelds in einem OptionsfeldHallo Jan,
Super es funktioniert!!!!
Ich versuche zu verstehen ... Funktioniert mein Code nicht, weil ich versuche, Hide and Show in MyWindow auszuführen?
Betreff: Probleme beim Ausblenden eines Textbearbeitungsfelds in einem OptionsfeldHier ist ein Weg:
NamesDefaultToHere(1);
MyWindow =
New Window( "Test...",
Panel Box( "Info",
rb = Radio Box({"Choice 1", "Choice 2"}),
teb = text edit box("Some text to edit")
)
);
rb << setScript(
choice = rb << getSelected;
if(
choice == "Choice 1", teb << hide(0),
choice == "Choice 2", teb << hide(1)
)
);