[débutant] Mes controles n'ent font qu'à leur tête!
En fait, j'ai deux soucis :
le premier : j'essais de faire une fonction "add" qui ajoute une ligne dans une CListCtrl avec dans la 1ère colonne, le texte situé dans une CEdit et dans la deuxième colonne, le texte situé dans une deuxième CEdit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
void Cconfig::AddCalibration()
{
CString str ;
CListCtrl *listeCalib = static_cast<CListCtrl *>(GetDlgItem(IDC_LS_CONFG));
//création d'une structure LV_ITEM pour l'insertion des lignes
LV_ITEM lvi;
//colonne 1
lvi.mask = LVIF_TEXT ;
lvi.iItem = listeCalib->GetItemCount() + 1;
lvi.iSubItem = 0;
GetDlgItemText(IDC_ED_CALIB, str);
lvi.pszText = (char*)LPCTSTR(str);
listeCalib->InsertItem(&lvi);
//colonne 2
GetDlgItemText(IDC_ED_VALUE, str);
lvi.iSubItem = 1;
lvi.pszText = (char*)LPCTSTR(str);
listeCalib->SetItem(&lvi);
} |
Or, impossible d'afficher le texte de la deuxième colonne! :cry:
mon deuxième problème est du même ordre:
lorsque je sélectionne une ligne dans ma liste, j'affiche le contenu des deux colonnes de la ligne sélectionnée dans les CEdit correspondante. J'ai ensuite fait une fonction "remove" qui supprime la ligne sélectionnée et qui efface les deux CEdit... Or, impossible de les effacer. Voila mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
void Cconfig::RemovCalibration()
{
CEdit *edCalib = static_cast<CEdit *>(GetDlgItem(IDC_ED_CALIB));
CEdit *edValue = static_cast<CEdit *>(GetDlgItem(IDC_ED_VALUE));
int iItem;
CListCtrl *listeCalib = static_cast<CListCtrl *>(GetDlgItem(IDC_LS_CONFG));
iItem = listeCalib->GetSelectionMark();
listeCalib->DeleteItem(iItem);
edCalib->Clear();
edValue->Clear();
} |
merci pour votre aide, parce que la, franchement, je sèche!