pyqt5 学习总结

(1)    无边框化设计

self.setWindowFlags(Qt.FramelessWindowHint)

这句话加在self.setupUi(self)下面

(2)    设置style 加在__init__(self)内

self.style = """ 
    QPushButton{
        color: #003300;
        border-top-right-radius: 4px;
        border-bottom-right-radius: 4px;
        background-color: #CCCC99;
        font-size: 15px;
        font-family: '';
        }
    QPushButton#pushButton{;
        background-color: blue;
    }
    QPushButton:Hover{
        background-color: #009966;
        color: white;
        }
    QTextEdit{
        border-top-left-radius: 4px;
        border-bottom-left-radius: 4px;
        background-color: #CCCCCC;
        selection-color: #CCCCCC;
        selection-background-color: #222222;
        color: black;
        }
    QPushButton:pressed {background-color: ;border-style: inset;} 
            """
self.setStyleSheet(self.style)

(3)    长按按钮触发

     setAutoRepeat()设置button是否在用户长按按钮的时候可以自动重复执行。

self.pushButton.setIcon(QIcon("C://alolf_train//icons//delete.gif"))
self.pushButton.setAutoRepeat(True)

(4)    图片填满button

self.pushButton.setFixedSize(QPixmap("C://alolf_train//icons//GantryKeyUp128.png").size());
self.pushButton.setStyleSheet("border-image:url(C://alolf_train//icons//GantryKeyUp128.png)");

(5)    按钮图片状态变化

self.pushButton.setStyleSheet("QPushButton{border-image:url(C://alolf_train//icons//GantryKeyUp128.png);}"
                              "QPushButton:hover{border-image: url(C://alolf_train//icons//GantryKeyUp128_Lit.png);}"
                              "QPushButton:pressed{border-image: url(C://alolf_train//icons//GantryKeyUp128_Pod.png);}"
                              );

(6)    不规则按钮实现  空白区域,按了无反应

pixmap_1 = QPixmap('C://alolf_train//icons//EmergencyStop.gif')
self.pushButton_1.setMask(pixmap_1.mask())

(7)    打包成exe文件

安装pyinstaller  python/Scripts 目录下 pip.exe installPyInstaller

 

在Scripts目录下,

pyinstaller -F-w -i ico的路径.py文件路径

 

注意图片资源的打包:新建一个后缀为.qrc的资源文件,与icons文件夹同一目录下,里面的内容如下:

     <RCC>

     <qresource>

         <file>icons/Add.png</file>

     </qresource>

     </RCC>

然后去文件目录下执行 pyrcc5 -oicons_qr.py icons.qrc 命令,最后在代码中 import icons_qr.py,并且修改下图片路径,一定要在路径前面加上冒号:。

import icons_qr.py

self.DownButton.setFixedSize(QPixmap(":/icons/GantryLeftDown128.png").size());
self.DownButton.setStyleSheet("QPushButton{border-image:url(:/icons/GantryLeftDown128.png);}"

(8)    ubuntu下打包生成可执行文件

先安装 pyinstaller   sudopip install pyinstaller

进入py文件的目录 pyinstaller xx.py

在dist目录下可以找到执行文件。 创建连接到桌面 可以打开

参考:http://blog.csdn.net/qqqqqqqqqq1qqqqqqqqq/article/details/46279963

(9)    去掉按钮等控件的虚线框(解决linux系统中按下button后会用阴影,方框) https://blog.csdn.net/caoshangpa/article/details/51771696

self.ExitButton.setStyleSheet("QPushButton{border-image:url(:/icons/Exit64.png);}"

                 "QPushButton{outline:none;}"

                    )

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值