Bonjour a tous,
J'ai récupérer les données de la base en utilisant CListCtrl.
Comment on peut récupérer les données d'une ligne en double click sur la ligne que je veux.
Merci d'avance.
Bonjour a tous,
J'ai récupérer les données de la base en utilisant CListCtrl.
Comment on peut récupérer les données d'une ligne en double click sur la ligne que je veux.
Merci d'avance.
salut
Crée l'évenement VM_DBLCLK de ton CListCtrl et rentre ceci
m_listCtrl est une variable membre CListCtrl
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 UpdateData(true); int nSelected = m_listCtrl.GetSelectionMark(); CString strText = m_listCtrl.GetItemText(nSelected, 0); UpdateData(false);
quand tu double-cliques tu réccupere l'élément choisi dans une chaine CString strText
le 0 indique la séléction de premier Item et ,1 un sous-item etc...
Bonne chance![]()
Merci, mais le double click il ne marche pas.
J'ai une ListCtrl dans une boite de dialogue.
m_ListCtrl est la fonction membre. J'ai la fonction NM_DBLCLK et non pas VM_DBLCLK. Voici mon code :Est-ce-que on ne doit pas initialiser NMHDR et c'est quoi *pResult=0.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 void CConsulterProduit::OnDblclkLISTProduit(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here UpdateData(true); int nSelected = m_ListCtrl.GetSelectionMark(); CString strText = m_ListCtrl.GetItemText(nSelected, 0); UpdateData(false); *pResult = 0; }
Merci d'avance.
salut
oui c'est NM_DBLCLK je me suis trempé et ça avait marché chez moi quand je l'utilisait
vérifie dans ton message map
a+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ON_NOTIFY(NM_DBLCLK, IDC_LIST, OnNMDblclkList)
PS: *pResult si je me rappelle concerne la sélection dans ton control si = 0 tu peut utiliser les flècher pour parcourir les items si = 1 tu ne peut pas utiliser les flèches pour parcourir la controle
Merci,
Voici mon code il marche bien lorsque je click deux fois sur la 1ere ligne il affiche le champ n°1, n°2,n°3 et n°4.
Ensuite je fait appel a une boite de dialogue qui contient des TextFields.(membre fonction de type CEdit)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 CString strText = m_ListCtrl.GetItemText(nSelected, 0); CString strTex = m_ListCtrl.GetItemText(nSelected, 1); CString strTe = m_ListCtrl.GetItemText(nSelected, 2); CString strT = m_ListCtrl.GetItemText(nSelected, 3); AfxMessageBox(strText); AfxMessageBox(strTex); AfxMessageBox(strTe); AfxMessageBox(strT);
Cc cp;
cp.DoModal();
Je veux récupérer strText,strTex,strTex et strTe dans les TextFiels de la boite de dialogue.Je fais comme ça :
//pour un seul TextField.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 UpdateData(FALSE); cp.m_EditC.SetWindowText(strText);
mais il ne marche pas. S.V.P c'est urgent.
Merci d'avance.
salut
Essaye de mettre tes TextFields.(membre fonction de type CString)
et tu écris
puis n'oublie pas d'inclure ton fichier "Dialog.h" dans ton .cpp qui affiche ton dialogbox
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Cc cp; UpdateData(TRUE); cp.NouveauTextFiel = strText; // même chose pour les autres ---- --- --- cp.DoModal(); UpdateData(FALSE);
Bonne chaance![]()
Merci Beaucoup 1000 fois.
Partager