【问题标题】:HSCROLL and VSCROLL in Combobox组合框中的滚动和滚动
【发布时间】:2012-05-22 18:24:16
【问题描述】:

我已经成功创建了一个带有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显示。只有超过 20 个项目才会出现 VScroll 栏。所以我不能放弃WS_VSCROLL

当项目较少时,您知道如何在没有 VSCROLL 栏的情况下使用“CB_SETHORIZONTALEXTENT”吗?

【问题讨论】:

    标签: c++ winapi combobox scrollbar win32gui


    【解决方案1】:

    组合框的高度似乎太小,无法容纳项目的数量。与指定的高度一样,下拉菜单中将显示尽可能多的项目。如果项目无法适应此高度,则会出现垂直滚动条。

    【讨论】:

      猜你喜欢
      • 2013-04-06
      • 1970-01-01
      • 2012-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-20
      • 2022-06-30
      • 2010-12-25
      相关资源
      最近更新 更多