Hallo Leute,
bei der Abfrage eines Formulars bin ich auf ein Hindernis gestossen, das mich derbe aufhält. Dazu habe ich euch mal ein kleines Beispiel eingestellt:
Spoiler anzeigen
Das Programm stellt ein Formular dar, in welchem Menüpunkte angeklickt werden können. Nach dem Betätigen des Buttons (dazu bitte runterscrollen) sollen die ausgewählten Felder an das nächste Programm übergeben werden.
Ein Hinweis zum Programmcode: dieser wird durch ein weiteres Programm on the fly generiert, daher bitte nicht so sehr auf das statische Aussehen konzentrieren.
Das Problem liegt im Unterprogramm '_AskFormular()', ganz am Ende. Zuvor wird in '_CollectThemes()' ein eindimensionales Array '$atb_all' generiert, welches die Strings aller verwendeten Buttons beinhaltet (ist wieder aus einem Programm heraus geschehen, daher der simple Code, funktioniert aber...). Dieses Array wird hier zu Debugging-Zwecken kurz angezeigt. Bitte wieder schliessen, dann funktioniert auch das Formular. Wenn im Formular einige Punkte ausgewählt werden, sollen die restlichen Zeilen aus dem Array '$atb_all' gelöscht werden. Dafür ist das Unterprogramm '_AskFormular()' da. Theoretisch...
Der Gedanke war der, das Array der Reihe nach mit GUICtrlRead abzufragen und immer wenn der Wert ungleich 1 ist (der Button also nicht aktiviert ist), diese Zeile mit _ArrayDelete zu löschen. Am Ende sollte das _ArrayDisplay ('Nur aktivierte Boxen?') dann nur die aktivierten Schalter zeigen. Leider ist es aber leer
Soweit ich es analysieren konnte, liegt das Problem wohl am Ausdruck in den Klammern des GUICtrlRead. Dort wird nicht der Inhalt des Arrays dargestellt, sondern nur '-1', also 'nicht existend'.
Was mache ich hier falsch?
Gruß
Albie