bonjour,
je cherche un moyen de supprimer l'ascenseur vertical d'une listBox personalisée, et d'ensuite le réafficher pour le reste de mon programme.
exist-il une fonction qui puisse cacher cet ascenseur?
merci
bonjour,
je cherche un moyen de supprimer l'ascenseur vertical d'une listBox personalisée, et d'ensuite le réafficher pour le reste de mon programme.
exist-il une fonction qui puisse cacher cet ascenseur?
merci
salut,
il faut decocher l'option vertical scroll dans les ressources.
par programme :
faire un Invalidate() derriere .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 MyListBox.ModifyStyle(WS_VSCROLL,0); // enleve la scrollbar MyListBox.ModifyStyle(0,WS_VSCROLL); // remet la scrollbar
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
je penses
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 talistbox.ModifyStyle(WS_VSCROLL,0,0);
Hiko-seijuro
n'cha - hoyoyo gang
espace perso : http://hiko-seijuro.developpez.com
dernier tuto : Introduction à l'éditeur de texte Emacs sous linux
consulter les faqs : http://www.developpez.com/faq
PAS DE QUESTIONS TECHNIQUES PAR MP OU MAIL
merci a vous deux, je testerai ça dès que possible.
ha ben non ca marche pas,
j'ai decocher l'option, et quand j'appel
ca fait rien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 m_MyListBox.ModifyStyle(0,WS_VSCROLL); // remet la scrollbar Invalidate();
invalidate sur la listbox ...Envoyé par mandagor
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
bon ben j'ai essayé plein de truc
-option coché, j'ai essayer de l'afficher
-option décoché, j'ai essayer de la supprimer
avec des m_MyListBox.Invalidate() des RedrawWindow et autre UpdateWindow aussi bien sur ma CMylistbox que sur les Cwnd...
rien n'y fait c'est bizard!!
re, apparemment c'est pas possible
il faut recreer la listbox apres le changement de style.
donc on procedera par recopie des infos de l'objet a l'identique :
utilisation
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60 //--------------------------------------- BOOL CMyListBox::Recreate(LPVOID lpParam/*=0*/) { if (GetSafeHwnd() == NULL) return FALSE; CWnd* pParent = GetParent(); if (pParent == NULL) return FALSE; // get current attributes DWORD dwStyle = GetStyle(); DWORD dwStyleEx = GetExStyle(); CRect rc; GetWindowRect(&rc); pParent->ScreenToClient(&rc); // map to client co-ords UINT nID = GetDlgCtrlID(); CFont* pFont = GetFont(); CWnd* pWndAfter = GetNextWindow(GW_HWNDPREV); // get the currently selected text (and whether it is a valid list selection) CString sCurText; int nCurSel = GetCurSel(); BOOL bItemSelValid = nCurSel != -1; if (bItemSelValid) GetText(nCurSel, sCurText); CMyListBox listboxNew; if (! listboxNew.CreateEx(dwStyleEx, _T("ListBox"), _T(""), dwStyle, rc, pParent, nID, lpParam)) return FALSE; listboxNew.SetFont(pFont); int nNumItems = GetCount(); for (int n = 0; n < nNumItems; n++) { CString sText; GetText(n, sText); int nNewIndex = listboxNew.AddString(sText); listboxNew.SetItemData(nNewIndex,GetItemData(n)); } // re-set selected text if (bItemSelValid) listboxNew.SetCurSel(listboxNew.FindStringExact(-1, sCurText)); // destroy the existing window, then attach the new one DestroyWindow(); HWND hwnd = listboxNew.Detach(); Attach(hwnd); // position correctly in z-order SetWindowPos(pWndAfter == NULL ? &CWnd::wndBottom : pWndAfter, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); return TRUE; }
Note:j'ai mis a jour mon projet customlistbox sur mon domaine.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 void CCustomListBoxView::OnButtonscroll() { // TODO: Add your control notification handler code here m_CustomListBoxVar.ModifyStyle(m_bScroll?WS_VSCROLL:0,!m_bScroll?WS_VSCROLL:0); m_bScroll=!m_bScroll; m_CustomListBoxVar.Recreate(); }
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
wahouuu
ca marche super, merci
avoir ton nivo en prog ca me fait rever
++
t'as plus qu'a bosser lol
Hiko-seijuro
n'cha - hoyoyo gang
espace perso : http://hiko-seijuro.developpez.com
dernier tuto : Introduction à l'éditeur de texte Emacs sous linux
consulter les faqs : http://www.developpez.com/faq
PAS DE QUESTIONS TECHNIQUES PAR MP OU MAIL
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager