精华内容
下载资源
问答
  • Qt界面美化

    2018-03-06 14:44:42
    该程序提供了一个界面美化的整体处理方式,满足整体布局与具体控件的美化操作。
  • QT界面美化包,包含七种美化模式,可随意切换,寻找最适合您风格的美化界面。
  • QT界面美化

    2014-04-18 19:47:49
    从网络上搜罗的最全的教你如何美化QT界面的指导性文档。
  • QT 界面美化

    千次阅读 2017-01-17 10:32:21
    最近在美化QT,一直对纯代码编写和美化界面能力拙...等我的界面美化完之后再po上来~/**********************************转载分割线**********************************/Qt 的一些心得本文来自:http://blog.csdn.n...

    最近在美化QT,一直对纯代码编写和美化界面能力拙急。网上搜了很多很多资料,但由于那个庞大的工程还没完成,先将网上的资料整理一下,有一些没用到的,留着以后看。等我的界面美化完之后再po上来~
    /**********************************转载分割线**********************************/
    Qt 的一些心得
    本文来自:http://blog.csdn.net/lpt19832003/archive/2010/03/15/5381095.aspx

     


    一. 背景刷成黑色,前景色设为白色。 
    方法一、paltette方式,经测试,该方法不会影响到其他控件,推荐使用

     

    点击(此处)折叠或打开

    1. QPalette bgpal = palette();
    2. bgpal.setColor (QPalette::Background, QColor (0, 0 , 0, 255));
    3. //bgpal.setColor (QPalette::Background, Qt::transparent);
    4. bgpal.setColor (QPalette::Foreground, QColor (255,255,255,255)); setPalette (bgpal);


    方法二、stylesheet方式 
    影响子控件的方法是

    点击(此处)折叠或打开

    1. setStyleSheet ("background-color: rgb(0,0,0);color: rgb(255,255,255);");

    不影响子控件的方法是:

    点击(此处)折叠或打开

    1. setStyleSheet ("venus--TitleBar {background-color: rgb(0,0,0);color: rgb(255,255,255);}");

     

    点击(此处)折叠或打开

    1. this->setObjectName("pw");// 设置对象句,相当于css里的id
    2. this->setStyleSheet("#pw {border-image: url(:/new/prefix1/Pic/54.png);}");// 设置id对应元素的背景色


    二. 圆角控件 用stylesheet方式

     

     

     

    点击(此处)折叠或打开

    1. setStyleSheet ("border:2px groove gray;border-radius:10px;padding:2px 4px;");

     


    三. 圆角窗口

    点击(此处)折叠或打开

    1. RoundRectWin::RoundRectWin() 
    2. { 
    3.     QPalette p = palette(); 
    4.    QPixmap img("roundrect.png");
    5.     QBitmap mask("roundrect_mask.png");
    6.     p.setBrush(QPalette::Window, QBrush(img));
    7.     setPalette(p);
    8.     setMask(mask);
    9.     resize(img.size());
    10.     //setWindowFlags(Qt::FramelessWindowHint);//这句会去掉标题栏 } 注意:mask的图多余部分设为白色
    11.  }

     


    四. 半透明窗口

    1.窗口整体透明,但是窗体上的控件不透明。 通过设置窗体的背景色来实现,将背景色设置为全透。

    点击(此处)折叠或打开

    1. QPalette pal = palette(); 
    2. pal.setColor(QPalette::Background, QColor(0x00,0xff,0x00,0x00)); 
    3. setPalette(pal);

      注:窗体标题栏不透明,窗体客户区上的控件不透明,QLabel控件只是字显示,控件背景色透明; 窗体客户区完全透明。
      另外从网上看到的方法: 

     

    点击(此处)折叠或打开

    1. setAttribute(Qt::WA_TranslucentBackground, true);

    试验的结果是类似于上面的方法,但有时候窗体会被一些杂色斑点填充,未找到原因。

     


    2.窗口及其上面的控件都半透明:

     

    点击(此处)折叠或打开

    1. setWindowOpacity(0.7);

    试验效果:窗口及控件都半透明。注意不能够setWindowFlags(Qt::FramelessWindowHint);要不就不起作用

     


    3.窗口整体不透明,局部透明:

    在Paint事件中使用Clear模式绘图。

     

    点击(此处)折叠或打开

    1. void TestWindow::paintEvent( QPaintEvent* ) 
    2. { 
    3.    QPainter p(this); 
    4.     p.setCompositionMode( QPainter::CompositionMode_Clear ); 
    5.     p.fillRect( 10, 10, 300, 300, Qt::SolidPattern ); 
    6. }

     

    试验效果:绘制区域全透明。如果绘制区域有控件不会影响控件。

    以上实验均是基于Directfb的Qte测试。在Linux下及Windows下效果会略有不同。 
    比如在Windows下第3个实验,绘制区域就是一个黑窟窿,如果Window本身半透,则是Window下面的内容加上半透效果,不是全透明效果。

     

    五. 控制QPixmap的alpha

    点击(此处)折叠或打开

    1.    QPixmap temp(pixmapTop.size()); temp.fill(Qt::transparent);
    2.     QPainter p(&temp);
    3.     p.setCompositionMode(QPainter::CompositionMode_Source);
    4.     p.drawPixmap(0, 0, pixmapTop);
    5.     p.setCompositionMode(QPainter::CompositionMode_DestinationIn);
    6.     p.fillRect(temp.rect(), QColor(0, 0, 0, alpha)); //--lable显示前景图片 ui->label->setScaledContents(true);
    7.     ui->label->setPixmap(temp);

     

    六. layout 的边界

    点击(此处)折叠或打开

    1. layout->setMargin (0);

     

     

     

     

    终于把qt半透明搞定了

    本文来自http://hi.baidu.com/sszllx/blog/item/ab833a59ea98622f2934f001.html

     

    点击(此处)折叠或打开

    1. QFrame *frame = new QFrame();
    2. QPixmap grabPixmap = QPixmap::grabWindow( frame->winId(), 20, 0, 100, 100 );
    3. frame->setGeometry( 20, 20, 100, 100 );
    4. frame->hide();
    5.  
    6. QPixmap pixmap = Resource::loadPixmap( "qpelogo" );
    7.  
    8. QImage image = pixmap.convertToImage();
    9. //image.convertDepth( 32 );
    10. image.setAlphaBuffer( true );
    11. QImage bgImage = grabPixmap.convertToImage();
    12. //bgImage.convertDepth( 32 );
    13.     bgImage.setAlphaBuffer( true );
    14.  
    15.     double k = 0.5;
    16. QRgb *rgbpos1 = image.colorTable();
    17. QRgb *rgbpos2 = bgImage.colorTable();
    18. for( int y = 0; y < 80; y++ )
    19.    for( int x = 0; x < 80; x++ )
    20.     {
    21. #if 1
    22.        uint rgb1 = image.pixel( x, y );
    23.      uint rgb2 = bgImage.pixel( x, y );
    24.      unsigned int red = qRed(rgb1);
    25.      unsigned int green = qGreen(rgb1);
    26.      unsigned int blue = qBlue(rgb1);
    27.      unsigned int bgred = qRed(rgb2);
    28.      unsigned int bggreen = qGreen(rgb2);
    29.      unsigned int bgblue = qBlue(rgb2);
    30.      red = k * red + ( 1 - k ) * bgred;
    31.      green = k * green + ( 1 - k ) * bggreen;
    32.      blue = k * blue + ( 1 - k ) * bgblue;
    33.      //red = red << 4;
    34.      //green = green << 4;
    35.      //blue = blue << 4;
    36. #endif
    37.      //color = QColor( red, green, blue );
    38.      //unsigned int myrgb = color.rgb();
    39.      //image.setPixel( x, y, myrgb );
    40.      uint *= (uint *)image.scanLine(y) + x;
    41.                 *= qRgb( red, green, blue );
    42.     
    43.     }
    44.  
    45. qWarning("%d %d", image.depth(), bgImage.depth());
    46. grabPixmap.convertFromImage( image );
    47.  
    48. frame->setBackgroundPixmap( grabPixmap );
    49. frame->show();
    50. #endif


    窗口嵌入桌面
    ps:这儿用上了前面一文提到的函数findDesktopIconWnd()。
    本文来自http://mypyg.blog.51cto.com/820446/263369

    一、将Qt窗口嵌入到桌面中。
    声明一个最简单的类:

     

    点击(此处)折叠或打开

    1. class Dialog : public QDialog
    2. {
    3.         Q_OBJECT
    4.  
    5. public:
    6.         Dialog(QWidget *parent = 0);
    7.         ~Dialog();
    8. }

    函数实现:

     

    点击(此处)折叠或打开

    1. Dialog::Dialog(QWidget *parent) : QDialog(parent)
    2. {
    3.         //创建个LineEdit用来测试焦点
    4.         QLineEdit* le = new QLineEdit(this);
    5. }
    6.  
    7. Dialog::~Dialog()
    8. {
    9. }

    主函数:

     

    点击(此处)折叠或打开

    1. int main(int argc, char *argv[])
    2. {
    3.         QApplication a(argc, argv);
    4.         Dialog w;
    5.  
    6.         HWND desktopHwnd = findDesktopIconWnd();
    7.         if(desktopHwnd) SetParent(w.winId(), desktopHwnd);
    8.  
    9.         w.show();
    10.         return a.exec();
    11. }

    有个窗口嵌入了桌面。按win+D组合键可以看到此窗口在桌面上。运行效果:


    二、让窗口全透明:
    2.1最容易想到的就是setWindowOpacity()函数了。

     

    点击(此处)折叠或打开

    1. w.setWindowOpacity(0.5);

    运行:结果杯具了,此函数完全无效,因为其父窗口特殊,这个函数内部使用的系统窗口标志不被支持。
    2.2

     

    点击(此处)折叠或打开

    1. w.setAttribute(Qt::WA_TranslucentBackground, true);

    全透明ok。如果其父窗口为空的话,透明的地方会成为黑块。运行效果:



    三、让窗口半透明
    3.1

     

    点击(此处)折叠或打开

    1. w.setAttribute(Qt::WA_TranslucentBackground, true) + 背景调色板

    运行效果仍然是全透明,因为TranslucentBackground为true,根本不画背景。
    3.2单纯的背景调色板:

     

    点击(此处)折叠或打开

    1. QPalette pal = w.palette();
    2. pal.setColor(QPalette::Background, QColor(100,100,100,50));
    3. w.setPalette(pal);
    4. w.setAutoFillBackground(true);

    运行效果出现了半透明:

    但是还没大功告成,不停点击桌面,再点击这个窗口,会发现这个窗口越来越不透明,直至完全不透明了。不知道是不是qt的bug。
    ps:加一句 w.setAttribute(Qt::WA_OpaquePaintEvent,true); 窗口就能够一直保持这个效果了。即这个方案可行。
    pps:此方案在XP也是黑色底块。
    3.3转战paintEvent()

     

    点击(此处)折叠或打开

    1. void Dialog::paintEvent(QPaintEvent *e)
    2. {
    3.         QPainter p(this);
    4.         p.fillRect(rect(), QColor(0,0xff,0,30));
    5. }

    用一个带有alpha值的颜色填充背景,运行效果发现颜色确实有alpha值,但是桌面的内容透不过来。
    3.4setAttribute(Qt::WA_TranslucentBackground, true) + paintEvent()
    得到了设想中的效果。运行效果:


    最终的主函数代码:

     

    点击(此处)折叠或打开

    1. int main(int argc, char *argv[])
    2. {
    3.         QApplication a(argc, argv);
    4.         Dialog w;
    5.  
    6.         HWND desktopHwnd = findDesktopIconWnd();
    7.         if(desktopHwnd) SetParent(w.winId(), desktopHwnd);
    8.  
    9.         w.setAttribute(Qt::WA_TranslucentBackground, true);
    10.  
    11.         w.show();
    12.         return a.exec();
    13. }

    最终的dialog实现代码:

     

    点击(此处)折叠或打开

    1. Dialog::Dialog(QWidget *parent) : QWidget(parent)
    2. {
    3.         //创建个LineEdit用来测试焦点
    4.         QLineEdit* le = new QLineEdit(this);
    5. }
    6.  
    7. Dialog::~Dialog()
    8. {
    9. }
    10.  
    11. void Dialog::paintEvent(QPaintEvent *e)
    12. {
    13.         QPainter p(this);
    14.         p.fillRect(rect(), QColor(0,0xff,0,30));
    15. }

    PS:
    经测试此代码在XP运行不正常。窗口成为黑色背景块。只能是颜色半透明了。
    还有就是图标会被盖住。只能把w.setAttribute(Qt::WA_TranslucentBackground, true);注释掉,有半透明颜色,无法看到桌面。

    在QT中自绘控件的方法说明
    本文来自:http://blog.csdn.net/dotboy/archive/2009/06/22/4287805.aspx

     

    首先给出在QT中进行标题栏自绘的方法(两个网址给出了方法和参考代码)

     

    litterflybug的专栏 ::http://blog.csdn.net/litterflybug/archive/2009/05/07/4157482.aspx

    QT官方FAQ: http://www.qtsoftware.com/developer/faqs/faq.2007-04-25.2011048382

    其次,做一点关于在windows平台下将顶级窗口透明化的说明

    1.在4.5版本以前,要实现Top level窗口的透明化,需要使用setMask方法,该方法有两个重载,一个是QRegion定义一个区域表明这一区域是要被绘制的区域,在该区域以外的地方是不需要绘制的.第二个重载版本是需要一个QBitmap,这个QBitmap只需要一张单色位图就可以了(另外,一张带有透明效果的PNG图片被读入QPixmap中以后,可以使用函数mask()返回一张与原图对应的单色位图,这很方便实际使用),白色部分表示是不透明要被绘制的区域,黑色部分表示该区域不应该被绘制(能实现透明的效果).

    2.4.5版本发行以后,可以设置窗口属性Qt::WA_TranslucentBackground来设定该窗口透明显示,但是有一个问题,就是如果该窗口是个top level窗口,就会有标题栏(title bar), 在windows平台下,如果不把这个标题栏去掉(设置Qt::FramelessWindowHint 标志位就会去掉标题栏),那么将不会是透明效果,而是背景为全黑(我的实验结果是这样)

     

    qt 设置子控件为半透明和背景色问题

    本文来自http://bbs.csdn.net/topics/370078118

    在子widget的构造函数里添加如下几句:

     

     

    点击(此处)折叠或打开

    1. QPalette myPalette;
    2. QColor myColor(0,0,0);
    3. myColor.setAlphaF(0.2);
    4. myPalette.setBrush(backgroundRole(),myColor);
    5. this->setPalette(myPalette);
    6. this->setAutoFillBackground(true);

    原理是:改子widget的背景色+修改alpha值(设置半透明)

    改子widget的背景色 :

     

    点击(此处)折叠或打开

    1. QPalette myPalette;
    2. QColor myColor(0,0,0);
    3. myPalette.setBrush(backgroundRole(),myColor);
    4. this->setPalette(myPalette);
    5. this->setAutoFillBackground(true);//这句很关键,缺少的话,背景色修改不成功


    修改alpha值:

     

    点击(此处)折叠或打开

    1. myColor.setAlphaF(0.2);//通过设置alpha值来改变透明度


    qt 窗口圆角问题
    本文来自http://blog.csdn.net/fariel_zhang/article/details/6315463

     

    最近在用qss做界面美化的工作,发现一个问题就是qss不能对顶级窗口设置边角圆弧,于是得另辟蹊径。据网上搜索可得到的方法我实现了三种:

     

    1.

    点击(此处)折叠或打开

    1. setWindowFlags(Qt::FramelessWindowHint); 
    2.     QBitmap bmp(this->size()); 
    3.     bmp.fill(); 
    4.     QPainter p(&bmp); 
    5. // p.setPen(Qt::NoPen); 
    6. // p.setBrush(Qt::black); 
    7.     p.setRenderHint(QPainter::Antialiasing); 
    8.     //p.drawRoundedRect(bmp.rect(), 20, 20); //四个角都是圆弧 
    9.     //只要上边角圆弧 
    10.     int arcR = 20; 
    11.     QRect rect = this->rect(); 
    12.     QPainterPath path; 
    13.     //逆时针 
    14.     path.moveTo(arcR, 0); 
    15.     path.arcTo(0, 0, arcR * 2, arcR * 2, 90.0f, 90.0f); 
    16.     path.lineTo(0, rect.height()); 
    17.     path.lineTo(rect.width(), rect.height()); 
    18.     path.lineTo(rect.width(), arcR); 
    19.     path.arcTo(rect.width() - arcR * 2, 0, arcR * 2, arcR * 2, 0.0f, 90.0f); 
    20.     path.lineTo(arcR, 0); 
    21.     p.drawPath(path); 
    22.     p.fillPath(path, QBrush(Qt::Red)); //arm和windows平台没有这行代码将显示一个透明的空空的框 
    23.     setMask(bmp);

    2.

    构造函数中

    点击(此处)折叠或打开

    1.     setAttribute(Qt::WA_TranslucentBackground, true); 
    2.     setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::WindowSystemMenuHint 
    3.                    | Qt::WindowMinimizeButtonHint | Qt::WindowMaximizeButtonHint);

     

    重载paintEvent

     

    点击(此处)折叠或打开

    1. QPainter p(this); 
    2. p.drawRoundedRect(0, 0, width() - 1, height() - 1, 20, 20);


    3.背景图片

     

    点击(此处)折叠或打开

    1. QPixmap pixmap(":/images/*.png"); 
    2.   setMask(pixmap.mask()); 
    3. QPalette palette; 
    4. palette.setBrush(QPalette::Background, QBrush( pixmap ) ); 
    5. setPalette(palette); 
    6. resize( pixmap.size() ); 
    7. setMask(pixmap.mask());

    同样的一个setMask();在三个不同的平台上区别倒是很大,很是奇怪。

    展开全文
  • Qt 界面美化

    2017-03-27 21:41:08
    1> UI界面跳转样式表 2> 代码调用函数编写 3> Qt调用样式表文件 新建一个.css文件; 在工程目录下添加一个新的资源文件; 将.css文件添加进去; 在主函数中,写代码,文件操作,读取.css...

    1、CSS 选择器:
    通过CSS选择器定位哪些HTML元素需要应用样式,及应用哪些样式。

    2、选择器分类:
    基本选择器
    复合选择器
    特殊选择器

    3、基本选择器:
    author

    *HTML标记选择器:span{font-size:20px;}
    
    *类别选择器:.myClass{color:#4499ee;} (myClass: 如 QPushButton)
    
    *ID选择器:#title{font-family:"幼圆"} (#:过滤器)
    

    4、复合选择器:

    *交集选择器:div.divClass{...}    /   div#divID{...}
    
    *并集选择器:div,h1#htitle,p.pClass{...}
    
    *后代选择器:div h1#htitle div, h1#htitle,p.pClass{...}
    

    这里写图片描述

    5、CSS注释只能用 /* */,不能用 //

    6、CSS学习方法
    1> 使用网页设计工具,通过CSS代码提示去逐步熟悉
    2> 通过网络资源学习
    (1)W3C学校:
    http://www.w3school.com.cn/css/index.asp
    (2)网页设计联盟:
    http://htmlhelp.com/zh/reference/css
    (3)网页设计师:
    http://www.w3cn.org
    3> 通过经典的设计案例去学习
    CSS禅意花园:
    http://www.csszengarden.com

    7、Qt使用样式表:
    1> UI界面跳转样式表
    这里写图片描述

    2> 代码调用函数编写
    这里写图片描述

    3> Qt调用样式表文件
    新建一个.css文件;
    在工程目录下添加一个新的资源文件;
    将.css文件添加进去;
    在主函数中,写代码,文件操作,读取.css文件的内容。

    QFile skinFile(":/skin.css");
        if (skinFile.open(QIODevice::ReadOnly))
        {
            a.setStyleSheet(skinFile.readAll());
            skinFile.close();
        }

    然后在.css文件中编写代码。

    8、css基本语法
    1、样式表由一系列样式规则组成。

    每条规则可以分为两部分:选择器和声明。
    这里写图片描述

    选择器表示规则作用到哪些控件上;声明则详细说明了是什么规则。

    2、
    1> Qt样式表不区分大小写,所以color,Color,coLor,coloR都表示同样的颜色属性。

    但是指代类的类名的时候,是区分大小写的。

    2> 多个选择器可以并列使用,它们之间用逗号隔开,例如:
    QpushButton, QLineEdit, QComboBox{color:red}

    3> 声明部分也可以有多个并列,之间用分号隔开。例如:
    QpushButton{color: red; background-color:wight}

    4> Qt样式表支持所有在CSS2中定义的选择器类型,下面是集中最为常用的选择器定义
    这里写图片描述
    这里写图片描述

    3、伪状态Pseudo-States
    根据具体控件的不同,选择器也可以有不同的状态,依次对应控件在不同状态的效果,称为伪状态。

    伪状态和选择器类名之间,用一个冒号分隔。例如:
    QpushButton:hover{color:wight}
    表示当鼠标悬停在按钮上时,其文字显示为白色。

    伪状态也可反向选择,例如当我们要设置除了鼠标悬停状态外其他状态的字体颜色,则可以:

    QRadioButton:!hover{color:red}

    同时,伪状态也可以并列,之间用冒号连接,表示伪状态之间用AND计算:

    QCheckBox:hover:checked{color:white} 
    QPushButton:hover:!pressed{color:blue;}

    4、样式层叠
    Qt样式表在QApplication上设置,或者在父窗口上设置,或者直接在子控件上设置

    最底层子控件的样式表是将所有其祖先或者QApplication的样式表单合并起来,作为其最终的样式表单。

    当合并后冲突发生时,子控件自身的样式表单总是要优先于其父类、祖类的样式表单,父类的样式表单优先于祖类….以此类推。

    例如:
    qApp->setStyleSheet(“QPushButton{color:white}”);

    myPushButton->setStyleSheet(“*{color:bule}”)
    这个样式将覆盖QApplication对按钮的设定

    5、样式继承
    在CSS中,子类的样式可以从父类中继承下来,但是在qt样式规则中,子QWidget是不会从父QWidget中继承样式表的。

    6、添加图片

    1> 在资源文件中添加图片
    2> 在Qt Designer中,右键 ->改变样式表
    这里写图片描述

    展开全文
  • qt界面美化

    千次阅读 2015-05-22 11:04:33
    想问一下大家,现在QT界面编程中怎么把界面做的好看一点?就比如这个界面,这些按钮的效果是用的什么技术 举报违规检举侵权投诉|2012-05-13 21:16wenzhutuzi|分类:Windows| 浏览11813次 分享到: 举报...
    想问一下大家,现在QT界面编程中怎么把界面做的好看一点?就比如这个界面,这些按钮的效果是用的什么技术
    
    Qt里面还可以用(视图,场景,模型)QGraphicsView,QGraphicsIitem.等等这一系列的类来开发不规则控件.用起来比较灵活.听说Qt Demo 就是用这个框架来开发的.
    一个书上说比较好用的方法就是用QStyle来写界面的风格,不过对个人能力的要求还是比较搞的.搞过一两次,觉得是挺好用.比起上两个来说工作量小很多.但是要了解QStyle的用法....老实说这个东西实在很难.
    另外你还可以用qss来搞.一种Qt中使用的css,虽然官方一直说是参考css搞出来的东西.但我怎么看都是一个样....
    用代码搞了那么久的Qt界面美化.一直到qml出现了.我爱死他了.如果你一定要搞的话我建议你用qml来搞.那就是一个给力.就是有一点,现在qml的资料少得可怜...
    最后.如果你是初学者的话最好不要去硬搞界面美化这一块....很伤的...到后面你会慢慢明白搞界面美化不是一个人可以做的事.你至少需要一个美工吧....呵呵呵呵....上述一切均为个人意见.仅供参考.....
    这个一般人都会靠重载控件的paint函数来做.让按钮背景透明,失去按钮原来方方正正的边框然后在上面贴一个好看的按钮图片.相应按钮不同状态做不同的处理.(比如按下的时候让按钮颜色表按之类的)但是工作量,就是一个大啊.重载一两个控件还行.
    
    展开全文
  • qt界面美化,包含源码和ui界面,漂亮大气,上档次,欢迎下载
  • QT界面美化的小工程

    2018-01-08 10:17:03
    这是一个很实用的QT界面美化的Item的集合,包含各种按键,提示框,表格等的集合,也是刘典武出品,必属精品!
  • Qt 界面美化教程 QSS QML Qt自绘方式优缺点对比 Qt下常见的界面美化方法有以下集中: 1、使用QSS样式表 2、自定义控件自绘 3、使用QML配置界面 但是以上几种都存在一些缺陷,主要是 1、使用QSS定制效果有效...

    Qt 界面美化教程 QSS QML Qt自绘方式优缺点对比

    Qt下常见的界面美化方法有以下集中:

    1、使用QSS样式表

    2、自定义控件自绘

    3、使用QML配置界面

     

    但是以上几种都存在一些缺陷,主要是

    1、使用QSS定制效果有效,比如想要做深度的定制就没法处理了

    2、自绘控件需要对qt控件和绘制api有比较熟悉才能够做到

    3、QML有比较高的学习成本,门槛有点高,并且熟悉使用c++的开发人员大多不愿意使用QML

     

     

    可以尝试使用Qt-UI界面库,则可以突破以上的局限。

     

    产品官网  www.qt-ui.com

     

    Qt-UI C++Python界面开发工具 UI开发工具 qt解决方案 qt开源项目

    展开全文
  • QT界面美化之QTabWidget

    2021-06-26 18:25:01
    界面效果图 展示动图 一、利用QProxyStyle改变tabBar位置并改变文字方向: 继承QProxyStyle自定义类CustomTabStyle #include <QPainter> #include <QProxyStyle> class CustomTabStyle : ...
  • Qt界面美化4

    千次阅读 2017-10-06 11:49:40
    代码: #include #include #include ...setAttribute( Qt::WA_TransparentForMouseEvents );...setToolButtonStyle( Qt::ToolButtonTextUnderIcon );...界面效果:  
  • 1.3 QT界面美化

    千次阅读 2019-07-05 10:24:26
    文章目录 给窗口设置一个外框 去除边框 将按钮设置地更圆润+设置颜色 增加小竖线 表格的美化 树表的美化 ui美化文件———————————————— 【注:】 给窗口设置一个外框 //包含头文件 #include //内容...
  • Qt界面美化3

    2017-10-06 11:48:48
    代码:   #topFrame { border: none; background: qlineargradient(x1: 0 , y1: 0 , x2: 0 , y2: 1 , stop: 0 #a6a6a6, stop: 0.08 #7f7f7f, ...界面效果:

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,742
精华内容 1,096
关键字:

qt界面美化