Det jag försöker göra är att hämta ut värdet från en listbox. Detta är ett exempel som jag hittat i en bok men mitt problem kvarstår... jag vill ha ut texten som jag har klickat på i listboxen... Så som jag ser det försöker du tilldela din strängvariabel hela listboxen, och inte bara en sträng ur den. Jag tror att man först måste ta fram index på vald rad i LisBoxen.nybörjar problem - läsa värden från ListBox[LÖ
void CMyAppDlg::OnSelchangelistBox()
{
CString str;
int buff;
for (int i=0;i < m_listBox.GetCount();i++)
{
buff = m_listBox.GetTextLen( i );
if (m_listBox.GetText(i, str.GetBuffer(buff)))
{
m_name = m_listBox;
UpdateData(FALSE);
}
}
}
m_listBox är variabeln till min listbox och är av typen CListBox. m_name är en CString variabel så min tilldelning funkar ju inte... hoppas någon förstår vad jag menar, tack på förhand!
/ JohanSv: nybörjar problem - läsa värden från en listbox
Sv: nybörjar problem - läsa värden från ListBox[L&
Jag tror att man använder funktionen int CListBox::GetCurSel()
Sedan kan man nog använda void CString::GetText(int nIndex, CString& rString)
där nIndex är radens index och CString-objektet är där du vill lagra texten.
Vill läsa ut alla raderna i ListBoxen får du nog använda funktionen CSTring::GetCount för att först ta reda på hur många rader det är och sedan göra en loop där du hämtar en rad per varv.
/Metafor