Bonsoir à tout le monde !
J'ai un soucis avec une CComboBox. Je créé une instance de CComboBox dynamiquement de la façon suivante :
Le problème que je constate est que la hauteur de ma combo déborde du rectangle dans lequel elle doit s'afficher et je ne sais pas pourquoi ... existe t'il une subtilité concernant le rectangle à passer à la création de la combo ? S'agit il bien du rectangle englobant la combo ou bien du rectangle associé à la zône d'édition de la combo ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 // LEFT=0, TOP=0, RIGHT=100, BOTTOM=20 CRect l_rect = this->m_rctRect; l_rect.DeflateRect(1, 1); this->m_pCombo = new CComboBox; this->m_pCombo->Create(CBS_DROPDOWNLIST|CBS_AUTOHSCROLL|CBS_SORT|WS_CHILD|WS_VISIBLE, l_rect, CWnd::FromHandle(this->m_pParent->GetSafeHwnd()), 1); this->m_pCombo->SetFont(this->m_pFont); this->m_pCombo->AddString(_T("ITEM1")); this->m_pCombo->AddString(_T("ITEM2")); this->m_pCombo->AddString(_T("ITEM3")); this->m_pCombo->AddString(_T("ITEM4"));
Lorsque j'utilise un contrôle CEdit à la place du CComboBox, le CEdit s'affiche bien dans le rectangle que je lui donne ... je ne vois pas trop ce qui cloche avec le CComboBox. Est ce qu'il faut utiliser la méthode SetItemHeight pour fixer la taille de la combo ?
Dans mon cas, j'aimerai que ma combo s'affiche bien dans le rectangle que je lui donne .. si quelqu'un a une idée je suis prenneur.
D'avance merci.
Partager