2

次のようにコンボボックスを作成しましたHSROLL

HWND find = CreateWindowEx(0, WC_COMBOBOX, _T(""), CBS_DROPDOWN | WS_VISIBLE | WS_CHILD |     
                           CBS_AUTOHSCROLL | WS_HSCROLL | WS_VSCROLL,0, 1, 100 30,
                           hwndToolbar, (HMENU)0, ghinst, NULL);

SendMessage(find, CB_SETHORIZONTALEXTENT, (WPARAM)1000, 0);

ただし、VSCROLLアイテムが2つしかない場合でも、 を提供します。これは非常に醜いです。をドロップするWS_VSCROLLと、問題は解決します。

一方、私も使用しました:

SendMessage(find, CB_SETMINVISIBLE, (WPARAM)20, 0);

20 アイテムのみを表示するには、他のアイテムは で表示されVSCROLLます。VScroll バーは、20 を超えるアイテムがある場合にのみ表示されます。だから私はドロップできませんWS_VSCROLL

アイテムが少ないときに VSCROLL バーなしで「CB_SETHORIZONTALEXTENT」を使用する方法について何か考えはありますか?

4

1 に答える 1