• 14698阅读
  • 9回复

急求高手指点:如何让QT应用程序主窗口在屏幕上不能被移动 [复制链接]

上一主题 下一主题
离线yangnonglin
 
只看楼主 倒序阅读 楼主  发表于: 2010-01-02
当触摸并按住我的应用程序主窗口的标题移动时,整个窗口就会移动,结果是整个界面都是浮动的.曾试图用showFullScreen盖住标题栏,但不幸的是当触摸到标题栏区域时,系统会重画一个有标题栏的主窗口.如何才能让主窗口不响应触摸信号而不移动呢?


如果用修改Qt::wfflags的方法,我的主窗口是MainDocumentWidgetStack::MainDocumentWidgetStack( QWidget *parent, const char *name, WFlags)
    : QWidgetStack( parent, name ), waiting(FALSE),如何修改QWidgetStack中的Qwidget的WFlags呢?

除上述方法外,还有别的方法吗? 上述方法我实现不了.急求指导!!!
离线duduqq

只看该作者 1楼 发表于: 2010-01-03
不要让它有标题档就行了
离线snailbing

只看该作者 2楼 发表于: 2010-01-04
你把窗口的标题去了就行,这样就不能移动了
你可以看一下 qwidget 的 setWindowFlags 函数,它支持窗体的按钮,边框和标题的操作。
具体要用什么参数自己查文档吧,不过在demo中有一个例子"Window Flags Example"就是用来显示 setWindowFlags 设置各种参数时的效果
离线love0105

只看该作者 3楼 发表于: 2010-01-06
重新实现void QWidget::moveEvent ( QMoveEvent * event )
离线九重水

只看该作者 4楼 发表于: 2010-01-06
2、1楼正解,
当然还有4楼,哈哈
离线午小夜

只看该作者 5楼 发表于: 2010-01-06
QWidget::setWindowFlags(Qt::FramelessWindowHint);
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线午小夜

只看该作者 6楼 发表于: 2010-01-06
引用第4楼九重水于2010-01-06 10:09发表的  :
2、1楼正解,
当然还有4楼,哈哈


九哥。。。你的簽名  好偉大阿。。。
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线yangnonglin
只看该作者 7楼 发表于: 2010-01-14
谢谢各位大侠.
离线stormsnow123

只看该作者 8楼 发表于: 2010-01-14
怎样在去了标题栏的情况下还能拖动呢
离线yangfanxing
只看该作者 9楼 发表于: 2010-01-14
引用第8楼stormsnow123于2010-01-14 22:43发表的  :
怎样在去了标题栏的情况下还能拖动呢

用lsss的方法去掉后好像没法儿再移动了~
但是重写鼠标enterEvent() 配合鼠标其它Event可以试试设置窗口随鼠标的移动而move()。
PHPWind好恶心。。。不想看这种界面。。。
快速回复
限100 字节
 
上一个 下一个