我想让程序中的对话框在运行时能拖动改变大小应该怎么设置呢?
我试过在对话框的属性窗口中将Border选项改为Resizing(默认为Dialog Frame),改变后虽然能改变窗口大小了,但是窗口中的控件并不会随窗口大小的改变而改变比例。怎么能解决呢?
另外,有没有人能把窗口中各种属性选项的大概功能说明一下呢?
非常感谢!
按 回答者stone_dongdong 说的“使用 MoveWindow函数,修改子控件的显示定位及尺寸”那是要手动计算哦?几乎不可能手动实现吧!有没有更好的办法啊?如果不行的话那能不能只让MediaPlayer控件随外框的变化而变化啊,就像WindowsMediaPlayer那样。
对于重绘我不是很了解,能举个例子吗?例如我有一个CDialog类的对话框Dlg,右下方有一个Button,不管Dlg如何拖动改变大小,我想让这个Button始终大小不变且始终处于距离对话框的右边框20%(对话框)总宽度,并紧贴下边框的位置,应该怎么做呢?希望能给出WM_SIZE响应函数代码?非常感谢!
关于MFC中对话框的Style的问题
答案:3 悬赏:60 手机版
解决时间 2021-12-25 06:24
- 提问者网友:暮烟疏雨之际
- 2021-12-24 20:13
最佳答案
- 五星知识达人网友:神也偏爱
- 2021-12-24 20:25
响应对话框的 wm_size消息,
在里面取得各个子控件的窗口指针,
然后根据你的计算取得此子控件的尺寸
使用 MoveWindow函数,修改子控件的显示定位及尺寸
在里面取得各个子控件的窗口指针,
然后根据你的计算取得此子控件的尺寸
使用 MoveWindow函数,修改子控件的显示定位及尺寸
全部回答
- 1楼网友:神鬼未生
- 2021-12-24 21:32
控件无法自动改变大小。
- 2楼网友:玩家
- 2021-12-24 20:41
你好!
不要怕麻烦,每个控件都MoveWindow重新绘制吧。
如果对你有帮助,望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯