VC:如何实现窗口和窗口内容在鼠标拖动下改变大小
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VC:如何实现窗口和窗口内容在鼠标拖动下改变大小相关的知识,希望对你有一定的参考价值。
拖动鼠标,窗口大小改变同时,窗口里的东西也在相应拖动方向上自动缩放。
窗口缩放不是问题,只要你的窗口边框是Resizing就行了重载OnPaint()然后GetClientRect()再用你得到的这个RECT把你的内容缩放到合适的尺寸,刷到屏幕上。 参考技术A 让你的窗口里的内容大小跟窗口大小相关联,比如,你要画个矩形,不要用(100,100,200,200),这样肯定是固定大小,要用GetClientRect()获得窗口大小,然后根据窗口的大小画你的图形,这样就能跟着窗口改变。
如: CRect rect;
GetClientRect(&rect);//get the window's rect
int a=rect.right-rect.left;
int b=rect.bottom-rect.top; 参考技术B OnSize中处理
Qt自定义界面边框后,移动鼠标拖动界面,界面会拖到任务栏以下。。。如何解决?
setWindowFlags(Qt::FramelessWindowHint);隐藏界面边框后,通过自定义鼠标移动效果引发的,算是Bug吧!
本应实现的效果是:上面的是界面,下面的是任务栏,鼠标卫浴任务栏之上时,界面就不能向下拖动了!
这个我知道,但是具体的资料很少!很不淡定。。。学了Qt将近2个月,好多东西都还不会!
追答具体百度下“Qt中拖拽窗口以改变位置的实现 ”
不熟悉的话去论坛把,那边都是大神啊膜拜- -
OK,好的,虽然没解决,但是相信车到山前必有路!
参考技术A 任务管理器,结束任务试试 参考技术B 什么软件以上是关于VC:如何实现窗口和窗口内容在鼠标拖动下改变大小的主要内容,如果未能解决你的问题,请参考以下文章
如何使用某个组合键+鼠标移动来调整窗口大小? (如 Linux 中的 Alt+F8)不单击并拖动