永发信息网

关于MFC中对话框的Style的问题

答案:3  悬赏:60  手机版
解决时间 2021-12-25 06:24
  • 提问者网友:暮烟疏雨之际
  • 2021-12-24 20:13
我想让程序中的对话框在运行时能拖动改变大小应该怎么设置呢?
我试过在对话框的属性窗口中将Border选项改为Resizing(默认为Dialog Frame),改变后虽然能改变窗口大小了,但是窗口中的控件并不会随窗口大小的改变而改变比例。怎么能解决呢?
另外,有没有人能把窗口中各种属性选项的大概功能说明一下呢?
非常感谢!

按 回答者stone_dongdong 说的“使用 MoveWindow函数,修改子控件的显示定位及尺寸”那是要手动计算哦?几乎不可能手动实现吧!有没有更好的办法啊?如果不行的话那能不能只让MediaPlayer控件随外框的变化而变化啊,就像WindowsMediaPlayer那样。

对于重绘我不是很了解,能举个例子吗?例如我有一个CDialog类的对话框Dlg,右下方有一个Button,不管Dlg如何拖动改变大小,我想让这个Button始终大小不变且始终处于距离对话框的右边框20%(对话框)总宽度,并紧贴下边框的位置,应该怎么做呢?希望能给出WM_SIZE响应函数代码?非常感谢!
最佳答案
  • 五星知识达人网友:神也偏爱
  • 2021-12-24 20:25
响应对话框的 wm_size消息,
在里面取得各个子控件的窗口指针,
然后根据你的计算取得此子控件的尺寸

使用 MoveWindow函数,修改子控件的显示定位及尺寸
全部回答
  • 1楼网友:神鬼未生
  • 2021-12-24 21:32
控件无法自动改变大小。
  • 2楼网友:玩家
  • 2021-12-24 20:41
你好! 不要怕麻烦,每个控件都MoveWindow重新绘制吧。 如果对你有帮助,望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯