首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

Qt怎么在指定的位置(比如鼠标点击处)弹出一个对话框

2012-05-22 
Qt如何在指定的位置(比如鼠标点击处)弹出一个对话框各位大侠。我现在需要实现一个功能,就是当我鼠标点击的

Qt如何在指定的位置(比如鼠标点击处)弹出一个对话框
各位大侠。我现在需要实现一个功能,就是当我鼠标点击的时候,在鼠标点击处弹出一个对话框,这个该如何实现呢?还有顺便问下,当我们的UI第一次show出来的时候,我如何指定它在我们桌面上的位置,比如我想让它在桌面的正中间显示出来,这个又如何实现呢?谢谢!

[解决办法]
this->resize(QSize())//大小
this->move()//坐标

重载下mousePressEvent函数,在里面new出一个对话框,并且设置坐标为你鼠标的当前坐标就可以了。
[解决办法]
QDesktopWidget *deskdop;
deskdop=QApplication::desktop();
move((deskdop->width()-this->width())/2,
(deskdop->height()-this->height())/2);
[解决办法]

探讨

QDesktopWidget *deskdop;
deskdop=QApplication::desktop();
move((deskdop->width()-this->width())/2,
(deskdop->height()-this->height())/2);

[解决办法]
哦,楼上的,怎么能简化成一行呢,我感觉最简化是两行,如下:

QDesktopWidget *deskdop=QApplication::desktop();
move((deskdop->width()-this->width())/2, (deskdop->height()-this->height())/2);

[解决办法]
探讨

哦,楼上的,怎么能简化成一行呢,我感觉最简化是两行,如下:

QDesktopWidget *deskdop=QApplication::desktop();
move((deskdop->width()-this->width())/2, (deskdop->height()-this->height())/2);

[解决办法]
参考QPoint QCursor::pos()和 QWidget::move()就能解决了

热点排行