QT 窗口位置如何固定

GANZHIABC 2011-12-12 12:03:51
各位大侠好,有个问题想请教一下:

我的qt程序中,点击一个按钮弹出一个界面,现在想让弹出的这个界面固定在屏幕的某一个位置上,这个应该如何实现?

目前我的做法是:重载这个界面的moveEvent()函数,在这个函数中加入一行代码:
this -> move(300,400);
但是运行时出现一些抖动的现象,效果不是很理想

先谢谢各位了!
...全文
2154 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
centlif 2012-08-31
  • 打赏
  • 举报
回复
固定位置,就是不能移动呗!
去掉边框,它就不能移动了。
在构造里this->move(pos)不就行了。
忧伤的蜗牛 2011-12-15
  • 打赏
  • 举报
回复
move 完全可以 啊
gcn_3 2011-12-15
  • 打赏
  • 举报
回复
弹出界面的构建函数是你写的话,在构建里移动位置
要不重载 showevent,这里先移动,然后调用默认的 showevent
碎炎 2011-12-15
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ganzhiabc 的回复:]

引用 2 楼 sryan 的回复:
C/C++ code

MyApplication::MyApplication(int argc, char *argv[]):QApplication(argc,argv)
{
}
bool MyApplication::winEventFilter(MSG *message, long *result)
{
switch(message-……
[/Quote]

。。。你是在嵌入式那用吧
我这个是windows的实现方法 处理WM_SYSCOMMOND消息并忽略
在windows程序上无法移动窗体 效果很好
但是linux之类就不清楚了 应该也有对应的消息过滤器
重写下主循环的QApplication里的函数即可(linux应该也有相应的过滤器)
GANZHIABC 2011-12-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sryan 的回复:]
C/C++ code

MyApplication::MyApplication(int argc, char *argv[]):QApplication(argc,argv)
{
}
bool MyApplication::winEventFilter(MSG *message, long *result)
{
switch(message->message)
{……
[/Quote]
不明白你的代码。。。
GANZHIABC 2011-12-15
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 lea200304 的回复:]
move 完全可以 啊
[/Quote]
这个怎么做呢?按我的做法,在板子中运行时有抖动效果不好!
碎炎 2011-12-12
  • 打赏
  • 举报
回复

MyApplication::MyApplication(int argc, char *argv[]):QApplication(argc,argv)
{
}
bool MyApplication::winEventFilter(MSG *message, long *result)
{
switch(message->message)
{
case WM_SYSCOMMAND:
{
if(LOWORD(message->wParam)==SC_MOVE||
LOWORD(message->wParam)==0xF012)
{
return true;
}
}
default:
break;
}
return QApplication::winEventFilter(message,result);
}
法尔我给他 2011-12-12
  • 打赏
  • 举报
回复
先隐藏,move完毕后,再显示.

16,212

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧