VC如何做像下拉列表一样的窗口

如图:点击一下,窗口伸展开来,但不遮住下面的,再点击一下,窗口收回来.如果是自己计算位置然后重新调整各个控件的位置和显示的,当窗口大小变化时就有问题了.请问一般情况下这是... 如图:点击一下,窗口伸展开来,但不遮住下面的,再点击一下,窗口收回来.
如果是自己计算位置然后重新调整各个控件的位置和显示的,当窗口大小变化时就有问题了.请问一般情况下这是怎样实现的呢?
MFC提供的下拉列表中只能加入文字,不能加入控件,请看清楚图片
展开
 我来答
yaoyue1019
2009-12-31 · 知道合伙人互联网行家
yaoyue1019
知道合伙人互联网行家
采纳数:804 获赞数:3392
擅长lua脚本 与android前端交互设计

向TA提问 私信TA
展开全部
就是使用Combo box控件

只是添加了一些函数

先给Combox box绑定变量comb必须是control型的,属性设置成drop list

使用addstring添加comb的内容,然后使用m_comb.GetCount获取总项目条数

接下来就是要在拉开/收起comb时对应的移动下面的东西

然后添加响应函数,一个是closeup一个是setfocus

在这2个函数里的响应函数分别添加函数使下面的东西上/下移动

可以使用movewindow实现移动功能

移动的话水平不移动,只垂直移动,高度是刚才GetCount的条数*每行的高度

具体几个函数的使用方法都可以在百度百科查找到 我这里只是提供函数,参数怎么解决还要靠你自己

没有全能的控件,其实很多控件所实现的内容都是要靠自己手工添加的,都是用的最基本的那几个控件
stone_dongdong
2009-12-27 · TA获得超过2853个赞
知道大有可为答主
回答量:1636
采纳率:0%
帮助的人:1019万
展开全部
1.扩展一个控件。在上面放置几个子控件(用动态生成的方式创建),响应wm_onlbuttondown消息实现弹出和收回的功能。
2.关于定位,要看实际的需要了,MFC没有自动排列子控件的功能,一个窗口的所有子控件定位关系是由开发者来确定的。你说的例子是资源管理器的查找吧,那是特制的,通过相应wm_onlbuttondown 和wm_size来动态调整各个子控件位置的。
3.如果要实现弹出/收回调整其他子控件。通过GetParent,GetWindow,来枚举查找当前窗口的所有兄弟窗口,GetWindowRect 来判断位置,动态移开就好了。
怎么定位看具体的需求而定。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chenming929
2009-12-27 · TA获得超过276个赞
知道小有建树答主
回答量:138
采纳率:0%
帮助的人:161万
展开全部
http://www.codeguru.com/Cpp/controls/combobox/

codeguru上有很多 用户定制后的 combobox
如:
CComboBox with support for history
Folder/Drive Picker Combo Box
。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-12-31
展开全部
IIF(VAL(ThisForm.Text1.VALUE) < 0 OR VAL
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式