• 6634阅读
  • 2回复

请问如何改变窗体标题栏的颜色? [复制链接]

上一主题 下一主题
离线lanfe
 
只看楼主 倒序阅读 楼主  发表于: 2008-07-21
— 本帖被 XChinux 执行加亮操作(2008-09-10) —
最近做程序,要求界面在接收到信号之后标题栏闪烁提醒用户。
比如初始WINDOW程序标题栏的颜色为蓝色,在收到信号后,标题栏变为红色,交叉显示。
查了QT资料,好像没有什么可利用的函数对标题栏进行操作。
离线lanfe
只看该作者 1楼 发表于: 2008-09-10
我在WINDOWS 下面用的是FlashWindow;
    if(e->timerId()==mi_warnflash_timer)
    {
        QPalette pp = QApplication::palette();
        if(mb_IsNeedFlash)
        {
            mi_count++;
            QPalette pp1 = pp ;
            pp.setColor(QColorGroup::Background,QColor(255,0,0));
           
            if(mi_count%2==1)
            {
                this->setPalette(pp);
            }
            else
            {
                this->setPalette(pp1);
            }
            FlashWindow((HWND)winId(),true);
        }
    }
但是无法移植到LINUX上面,请大家不吝赐教!
离线lixusheng

只看该作者 2楼 发表于: 2008-09-10
看了你的例子我才明白点QT中palette的用法.
但是这个代码好像有问题
pp.setColor(QColorGroup::Background,QColor(255,0,0));

看了看文档,是不是应该这样写
pp.setColor(QPalette::Background,QColor(255,0,0));
快速回复
限100 字节
 
上一个 下一个