• 4229阅读
  • 7回复

以鼠标点为中心点的缩放 [复制链接]

上一主题 下一主题
离线hope_yh
 

只看楼主 倒序阅读 楼主  发表于: 2010-01-25
如何去除以默认中心点的缩放,改为以鼠标中心点的缩放,scale无设置缩放中心点的参数
离线yangfanxing
只看该作者 1楼 发表于: 2010-01-25
加上窗口的move???(当然要通过计算坐标了);
否则窗体的话都是以topleft做基点吧~~~
PHPWind好恶心。。。不想看这种界面。。。
离线benbenmajia

只看该作者 2楼 发表于: 2010-01-25
应该可以设置的吧?
安然.....
离线hope_yh

只看该作者 3楼 发表于: 2010-01-25
还是不明白
离线xinqingfly

只看该作者 4楼 发表于: 2010-01-25
记下鼠标坐标缩放后的位置差,缩放结束后移动回来,先缩放,再移动
菜鸟也是鸟
离线yangfanxing
只看该作者 5楼 发表于: 2010-01-25
R 4L;;;

你的模型才没让人明白呢~是拖动边框缩放还是菜单缩放?etc
PHPWind好恶心。。。不想看这种界面。。。
离线hope_yh

只看该作者 6楼 发表于: 2010-01-25
利用鼠标滚轴缩放
离线yangfanxing
只看该作者 7楼 发表于: 2010-01-25
哦。
那就按前L说的,在窗口的resizeEvent计算下坐标吧!也不麻烦;就是鼠标的相对坐标记下来,存为一个定值,在窗口paintEvent的时候move一下,使相对坐标不变就可以了;

相对坐标:rpos = QPoint(double & rx, double & ry);
rx = pos.x()占this->width()的百分比;
ry = pos.y()占this->height()的百分比;
PHPWind好恶心。。。不想看这种界面。。。
快速回复
限100 字节
 
上一个 下一个