Frage zu Listenfeld
-
Hi,
ich will einen angewählten Eintrag aus einem Listenfeld an ein Textfeld übergeben wenn ich auf einen Button drücke.
void CGSaetzeaus::OnButtrsatz() { CListBox *pUebergabe; pUebergabe =(CListBox*)GetDlgItem(IDC_LISTRSATZ); pUebergabe->GetCurSel(); }Das hab ich bisher zusammengebastelt. Hab ich die MSDN richtig verstanden das ich mit GetCurSel den ausgewählten Eintrag ermittelt habe? Wenn ja wie krieg ich dann diesen String in das Textfeld? Wenn nein wie ermittel ich den ausgewählten Eintrag?
mfg blub

-
blub schrieb:
Hab ich die MSDN richtig verstanden das ich mit GetCurSel den ausgewählten Eintrag ermittelt habe
Naja, damit hast du den Index des ausgewählten Eintrages.
Könnte mit CListBox::GetText klappen. Und zwar mit CListBox::GetCurSel als erstem Übergabeparameter. Dann steht der Eintrag in einer (CString) Variablen, die du dann mit SetWindowText(...) in das Textfeld schreiben kannst.
-
hallo !!
Mit GetCurSel() ermittelst Du den Index der aktuellen Auswahl.
Wenn nichts ausgewählt ist, liefert GetCurSel() LB_ERR ...Habe ne Member-Variable m_strTest für das Textfeld und
eine Member-Variable m_ctlList1 für das Listfeld in der
Dialoganwendung deklariert.Zum Testen habe ich das Listfeld mit ein paar Werten gefüllt.
In OnInitDialog:m_ctlList1.AddString("hallo");
m_ctlList1.AddString("wie gehts denn heute ?");
m_ctlList1.AddString("achsoooo");Einem Button die Funktion OnButton() zugewiesen:
void CTooltipDlg::OnButton()
{
if( m_ctlList1.GetCurSel() != LB_ERR )
{
m_ctlList1.GetText(m_ctlList1.GetCurSel(), m_strText);
UpdateData(false);
}
}
Wenn ich auf den Button klicke, steht die aktuelle Auswahl des Listenfeldes im
Textfeld.
Jooo, es klappt !!Hoffe ich konnte weiterhelfen,
Gruss, Joe
-
Hi,
funzt prima,

mfg blub