上一个帖子:http://topic.csdn.net/u/20100119/15/56420a53-db63-4d22-ac49-b97bf4aecac5.html。
无边框拉伸问题已经解决,该程序的主窗口为一个dialog,风格是nonborder,默认是没有系统菜单的(systemmenu),加上ModifyStyle(0,WS_SYSMENU)即可添加系统菜单,可导致的结果是拉伸功能不可实现!!!如何让这两个功能同时并存?求教各位大侠,再放100分。
无边框拉伸问题已经解决,该程序的主窗口为一个dialog,风格是nonborder,默认是没有系统菜单的(systemmenu),加上ModifyStyle(0,WS_SYSMENU)即可添加系统菜单,可导致的结果是拉伸功能不可实现!!!如何让这两个功能同时并存?求教各位大侠,再放100分。
解决方案 »
- 关于操作系统内存读写保护的一个疑问,很迷惑。
- 在VC下使用VBScript.RegExp对象,如何获取对象异常时的输出文字?
- 把程序改成DLL问题分析
- dll动态连接文件怎么打开,可以重新编译吗?
- 再次提出有关摄像头的问题,希望大家来指点江山!!!!!!!!!!
- VC6这么样使用Dao执行一个存储过程?在线等待
- 怎样解决未解决的外部引用???(是不是使用某个库文件中函数无法引用?怎样引用呢?)
- 如何持久显示?
- 请教高手::Socket与多线程问题???
- 关于客户端和服务器端数据的交互
- 常见的选择下载到地址的功能出错,无解中,100%结贴,求教!
- MFC中有这种控件吗?像保存文件位置那一种。请看插图
在Styles里面,Border仍然是Dialog Frame,Style:PopUp,去掉TitleBar这个选项就可以了!这样既可以修改按钮风格,也可以相应WM_NCHITTEST这个消息响应函数!经测试没问题!
1、对话框设置为有系统菜单、resizing边框;
2、响应WM_NCCALCSIZE消息,函数中不调用基类的响应函数,只执行GetWindowRect(&lpncsp->rgrc[0])一行代码;
3、响应WM_NCHITTEST消息,判断边框范围返回相应的值,实现可拖动改变大小。(这点LZ目前已经实现了)
4、响应WM_NCACTIVATE消息,直接return FALSE。(前面忽略了边框的重绘,加上这点就没问题了)一共只需要自己写两行代码,不算复杂吧?
1、出现了close 按钮。
2、调出其他的dialog时,这些dialog上面的按钮点击不起作用。
3、有时候拉伸不起作用。
1、对话框设置为有系统菜单、resizing边框 如果是这样的话,鼠标移动到边框是可以
但是整个DIALOG会有边框出现