Combobox
-
Ich habe ein combobox erstellt.Und diese eine control variable gegeben (m_prio) dann habe ich string eingefügt.
UpdateData(TRUE); m_prio.AddString("Echtzeit"); m_prio.AddString("Hoch"); m_prio.AddString("Normal"); m_prio.AddString("Niedrig"); UpdateData(FALSE);
Nur wollte zuerst.Das bei start einer dieser Variabln als **standard steht.Also wollte ich es so machen:
UpdateData(TRUE); m_prio = "Niedrig"; UpdateData(FALSE);
Aber es kommt:
error C2582: 'CComboBox' : 'Operator =' ist nicht verfuegbar**
-
Machs so:
m_prio.SetCurSel(m_prio.FindString(-1,"Niedrig"));
-
Ok danke aht mir sehr geholfen.Kannst du mir asuch sgen wie ich abfrage welches der 4 gewählt is also mit:
if (m_prio == "Niedrig") { }
geht es nicht
-
m_prio.SetCurSel() liefert anschließend die Nummer des selektierten Eintrags als int
-
und wie frage ich die ab?
-
sollte so gehen
void MyDlg::OnCloseupCombo1() //Combo1 ist Name
{
CString auswahl1;
int auswahl_NR;
m_prio.SetCurSel(auswahl_NR);auswahl1.Format("%d",auswahl_NR);
MessageBox(auswahl1);
}Vossy
-
Also ich wollte da ja etwa so:
if (m_prio == Echtzeit) { //code den ich möchte }
nur halt für ne combobox
-
he wo liegt das problem
void MyDlg::OnCloseupCombo1() Aufruf der Funktion nach auswahl
{
CString auswahl1;m_Liste.GetWindowText(auswahl1);
if (auswahl1 == "Echtzeit")
{
//dein Code
}
else if (auswahl1 == "Hoch")
{
//dein Code
}
else
{
//mögliche Fehlerbehandlung einfügen
}//MessageBox(auswahl1); //Auswahlkontrolle
}Vossy