- A+
所属分类:linux技术
故事背景:最近需要在父窗体修改按钮上弹出二次确认框,之前要么使用 QDesktopWidget,要么使用QCursor,来设置弹窗位置,但是这两种方式不是很理想,就是想弹到相对父窗体的位置,开始咱们的探险之路。。。
解决方案:因为之前了解过坐标系相关的概念,就从这个方向出发
1.获取父窗口相对于屏幕的坐标,即绝对坐标
2.计算子窗口的坐标
3.移动窗口
代码有话说:
QPoint globalPos = this->mapToGlobal(QPoint(0, 0)); pDlg->move(globalPos.x() + 200, globalPos.y() + 100);
虽然只是一个小小的功能,还是需要能帮助到更多的人,提供一个小小的思路,大家可以进行扩展!