Problem: Erweitertes Kombinationsfeld
-
Hallo,
hab da folgendes Problem:
Habe mir ein Erweitertes Kombifeld, mit dem Dialogfeldeditor angelegt,
und eine Membervariable vom Typ CString mit diesem verbunden.Möchte jetzt das Kombifeld bei der initialisierung einen Standartwert
zuweisen, das habe ich bei der InitInstance getan.So jetzt zu meinen Problem:
Wenn ich dem Kombifeld das Format Dropdown zuweise klappt die initialisierung
sowie die weitere Verarbeitung mit meiner Membervariablen.Wenn ich aber dem Kombifeld das Format Dropdown-Listenfeld zuweise
klappt die Initialisierung sowie die weitere verarbeitung mit der Memebervariablen nicht mehr.Der Wert wird nicht auf das Steuerelement über tragen.
-
Ein Dropdown-Listenfeld kann nur einen in der Auswahlliste enthaltenen Wert anzeigen. Vielleicht mußt Du Deinen Standardwert erst mit AddString der Auswahliste hinzufügen, bevor Du ihn dem Kombinationsfeld zuweisen kannst.
Eventuell geht selbst das nicht.
Wenn Du den Typ: Dropdown-Listenfeld zuerst setzt und danach mit dem Klassenassistent eine Membervariable anlegst, ist der Standardtyp ein Integer.
Der bezeichnet dann nicht den String im Kombinationsfeld, sondern nur den Index
des aus der Dropdownliste ausgewählten Elementes.Ich hoffe Du kommst damit weiter.
-
-> CComboBox::SetCurSel
In der InitInstance? Bevor der Dialog erstellt ist (Außer du hast mit Create erstellt)? - Das bezweifel ich.
Sowas kommt in CDialog::OnInitDialog
-
Also,
die Werte die in dem Kombifeld zur auswahl angezeigt werden sollen,
habe ich mit den Eigenschaftsdialog von dem Kombifeld gesetzt.Dort habe ich auch das Format Dropdown-Listenfeld gesetzt.
Die Membervariable kann ich trotzdem auch wenn ich zuvor Dropdown-Listenfeld
gesetzt habe in CString setzten.Nun möchte ich das Kombifeld mit einem Standartwert belegen z.B.:
m_strKombi = _T("First");Wenn ich das Kombifeld mit dem Format "Dropdown" setzte klappt das auch,
wenn der Dialog angezeigt wird ist im Kombifeld "First" vorausgewählt.Nur mit dem Format "Dropdown-Listenfeld" bekomme ich das irgendwie nicht hin.