Zeile einer ListBox markieren???
-
Hey Leute,
wie kann ich in einer ListBox eine Zeile Markieren und welche Nachricht wird gesendet wenn ich die ListBox Vertikal nach oben bzw nach unten scrolle(bei drücken auf die Scrollbuttons)?
Gibt es da sowas änliches wie LBN_SELCHANGE?M.f.G.
-
check mal deinelistbox.SetCurSel() (selektiert nach index)
oder .SelectString() (selektiert nach namen)MSDN ist meist sehr hilfreich

-
Irgendwie hast du mich falsch verstanden!
Ich will eine Zeile von einer ListBox markieren.(Praktisch wenn ich mit der Maus draufklicke soll dieses Element der ListBox markiert werden)
Thx
-
Hi Leute,
wie kann ich auf die Scrollbar einer ListBox auf die Scrollbarnachrichten reagieren.
Irgendwie reagiert er immer auf die Scrollbar meines Dialoges.Danke für eure hilfe!!!
-
Ich habe es auch schon mit SetCurSel(i) versucht, aber der gewählte Eintrag wurde nicht markiert.
Hier ist mal mein Beispiel-Code, bei dem es NICHT funktioniert hat.CListBox* m_ctrListBox = (CListBox*)GetDlgItem(IDC_LIST1); m_ctrListBox->InsertString(1,Text); m_ctrListBox->SetCurSel(1);Nach meinem Verständnis sollte jetzt der Eintrag blau markiert sein. Ist er aber nicht.

Was mache ich falsch?
Danke für Eure Hilfe! :xmas1:
-
Kleiner Tip:
Das erste Element hat den Index 0.
-
dEUs schrieb:
Kleiner Tip:
Das erste Element hat den Index 0.Hallo dEUs,
ja, das weiss ich. Aber ich habe ja über InsertString auch einen festen Index übergeben. Auch wenn ich diesen auf 0 setze (siehe Code unten) wird der gewählte Eintrag nicht markiert.

CListBox* m_ctrListBox = (CListBox*)GetDlgItem(IDC_LIST1); m_ctrListBox->InsertString(0,Text); m_ctrListBox->SetCurSel(0);Was mach ich falsch?
-
Hm, nichts ... Sollte so eigentlich tun.
-
Mist!

Gibt es einen anderen Weg eine Zeile zu markieren?
-
Ähm, noch ein Tip:
Die Zeile ist standardmäßig nur blau, wenn die ListBox den Fokus hat. Falls sie auch sonst blau sein soll muss man das in den Eigenschaften der ListBox einstellen.