MFC组合框:当有x个项目时显示组合框的滚动条
问题描述:
我有一个组合框,但只有当超过30个项目时才显示滚动条。它导致组合框变得太长 - 不能责怪它,但有时候,人们认为它是丑陋的。那么有没有办法限制组合框上的最大可见项 - 就像我有60个项目一样,组合框一次只显示10个项目,使用滚动条可以查看更多项目。MFC组合框:当有x个项目时显示组合框的滚动条
答
使用CBS_DISABLENOSCROLL来始终显示滚动条。
定义对话框资源中较小的下拉宽度。
或者在程序中调整高度。
- 拦截CBN_DROPDOWN通知
- 计算你想要的大小。
- 呼叫GetComboBoxInfo得到hwndList
- 使用SetWindowPos与SWP_NOMOVE和SWP_NOZORDER改变大小
我试过这个,但它仍然显示30个项目,他们希望它只显示10个项目:( – 123iamking