• 5543阅读
  • 7回复

如何创建一个永在桌面的窗体? [复制链接]

上一主题 下一主题
离线icevi
 

只看楼主 倒序阅读 楼主  发表于: 2006-09-27
我想创建一个永远在桌面的窗体,即它永远不会在其它窗体前面,看起来就象是桌面背景图片的一部分似的.
大家帮忙想想办法啊~~~
[ 此贴被XChinux在2006-10-09 13:08重新编辑 ]
====================
www.bilive.com
BiForm BiReader BiChat
最爱QT和PYTHON
====================
离线malion
只看该作者 1楼 发表于: 2006-09-28
我想要建一個永遠在最上層的label,應該是同一個問題吧!!
目前無解!!有人可以幫幫忙嗎??
离线icevi

只看该作者 2楼 发表于: 2006-09-28
永在最上的窗体比较好建,用setWindowFlag(...) 就可以了。但想做永在最底层的我没有试出来。

大家帮忙啊~~~
====================
www.bilive.com
BiForm BiReader BiChat
最爱QT和PYTHON
====================
离线malion
只看该作者 3楼 发表于: 2006-09-28
引用第2楼icevi2006-09-28 16:23发表的“”:
永在最上的窗体比较好建,用setWindowFlag(...) 就可以了。但想做永在最底层的我没有试出来。
大家帮忙啊~~~


我找不到可用參數啊??
我是使用Qt4的,可以達成嗎??
离线style
只看该作者 4楼 发表于: 2006-09-28
#include <QApplication>
#include <QWidget>

int main(int argc, char **argv)
{
   QApplication app(argc, argv);
   QWidget w;
   w.setWindowFlags(Qt::WindowStaysOnTopHint);
   w.show();
   
   return app.exec();
}
离线malion
只看该作者 5楼 发表于: 2006-09-28
引用第0楼icevi2006-09-27 18:02发表的“如何创建一个永在桌面的窗体?”:
我想创建一个永远在桌面的窗体,即它永远不会在其它窗体前面,看起来就象是桌面背景图片的一部分似的.
大家帮忙想想办法啊~~~


我因為要一在畫面頂端做不出來,後來發現自已的錯誤所在,以致於我的一個widget一直在最底端,這個對我來說的錯誤可能可以滿足你的要求??

做法是先建一個Myparent,再產生一個Mywidget(真正要的),再利用設定把Myparent設定成full screen,這樣如果在main function下產生的第一個wdiget是Myparent,那Myparent以及其上的Mywidget都會是在最下面,Myparent直接當桌布用@@
离线icevi

只看该作者 6楼 发表于: 2006-09-29
谢谢楼上,我试过你说的方法,但是效果是这样的:
整个应用程序是显示在所有其它窗口上面,遮住了其它所有的窗口。
我用的是:
QWidget *abc=new QWidget();
abc->setWindowState(abc->windowState() ^ Qt::WindowFullScreen );
不知道你的方法到底是什么效果?
====================
www.bilive.com
BiForm BiReader BiChat
最爱QT和PYTHON
====================
离线malion
只看该作者 7楼 发表于: 2006-09-29
引用第6楼icevi2006-09-29 13:27发表的“”:
谢谢楼上,我试过你说的方法,但是效果是这样的:
整个应用程序是显示在所有其它窗口上面,遮住了其它所有的窗口。
我用的是:
QWidget *abc=new QWidget();
abc->setWindowState(abc->windowState() ^ Qt::WindowFullScreen );
.......


依序是後建立的widger蓋前面建立的,所以第一個建立的widget應該要是這個!!
快速回复
限100 字节
 
上一个 下一个