PDA

View Full Version : Esperti di Visual C++ venghino!


bizzu
05-02-2004, 10:56
Ho costruito un'applicazione in visual c++ 6, che gestisce un database con l'ODBC. Per visualizzare i record, ho creato una finestra separata con una CListCtrl. Per riempirla, supponiamo con dei nomi e dei cognomi, ho eseguito la query sql (anche se non riesco a capire per quale motivo non me li mette ordinati, visto che ho messo ORDER BY Cognome...) e scorrendo il CRecordset li ho inseriti con la funzione InsertItem(ID, stringa).
Ora, per modificare i record l'utente deve fare doppio click su un elemento, in modo da aprire una finestra con dei campi in cui inserire i nuovi dati. Ma non riesco a capire come posso passare l'ID dell'elemento quando si fa doppio click... :(

ri
05-02-2004, 17:38
assumendo che m_list sia il nome dell'oggetto CListCtrl:


POSTION pos = m_list.GetFirstSelectedItemPosition();
if(pos)
{
int iItem = m_list.GetNextSelectedItem();
CString txt = m_list.GetItemString(iItem, 0);
....
}


se vuoi iterare fra selezioni multiple, metti while al posto di if

bizzu
05-02-2004, 20:28
Grazie mille ri! :ave:
Per caso sai anche il motivo per cui pur facendo un ORDER BY Cognome non me li mette ordinati?

ri
06-02-2004, 00:01
prova a forzare il verso di ordinamento con ASC o DESC
e verifica che il sort del listctrl sia disabilitato