zoukankan      html  css  js  c++  java
  • 使用pycharm+pyqt5 调取界面程序

    一、使用QtDesigner制作界面

    1)打开的界面设计工具QtDesigner,如图:



    2)新建窗体,选择Main Window:



    3)分别在窗口添加如下控件,Calendar、3个pushButton、checkBox、text Browser、text Edit如图所示:



    4)拖好控件之后保存到pycharm项目文件夹下,生成对应的.ui文件:




    5)右键.ui文件使用PyUIC工具转化.ui代码为.py代码:

    6)成功生成.py文件:

    7)删除如下三行:

    MainWindow.setCentralWidget(self.centralwidget)、
        MainWindow.setMenuBar(self.menubar)、
        MainWindow.setStatusBar(self.statusbar)



    8)底部添加如下代码:

     
    if __name__=="__main__":  
        import sys  
        app=QtWidgets.QApplication(sys.argv)  
        widget=QtWidgets.QWidget()  
        ui=Ui_MainWindow()  
        ui.setupUi(widget)  
        widget.show()  
        sys.exit(app.exec_())  



    9)右键Run就可以看到图形界面了:

    图形界面:



    二、在pycharm中用自己的代码调取图形界面:

    1)新建一个.py文件在项目中,如图,我的叫blogTest.py :




    2)分别在文件中,添加以下内容:

    写一个类,继承界面UI类,添加初始化方法,代码入口处使用show方法显示界面,代码如下:

     
    import sys
    from blog import Ui_MainWindow
    from PyQt5 import QtWidgets
    
    
    class mywindow(QtWidgets.QWidget, Ui_MainWindow):
    
        def __init__(self):
            super(mywindow, self).__init__()
            self.setupUi(self)
    
    
    
    
    if __name__=="__main__":
    
        app=QtWidgets.QApplication(sys.argv)
        myshow=mywindow()
        myshow.show()
        sys.exit(app.exec_())

    3)右键运行,界面出现:

    4)

    在QtDisigner添加控件事件

    1)打开QtDesigner 载入上次构建ui文件:

    2)添加控件事件:

    Qt中对控件事件触发都统一称为槽和信号,我这理解为触发源和目标源,事件的添加方法就是在QtDesigner中使用 编辑槽/信号 功能后,点击触发源,拖动信号线指向目标源,如下图,我使用了pushButton作为了触发源,calendar作为目标源,拖动结束后,会出现事件编辑栏,左边的为触发源的事件,右边为目标源的事件,分别选择即可,步骤如下图:

    3)同理,分别用两个按钮添加了两个事件,QtDesigner会显示各触发源和目标源的事件:



    4)保存UI文件,在Pycharm中生成.py文件,可以在代码中看到添加的事件,qt使用了connect方法连接了槽和信号,记得顺手删除影响编译的三行代码:

    二、运行效果:

    1)运行调取窗口的.py

    2)运行后,分别点击两个pushButton,可以看到calendar控件的隐藏和显示功能:

    隐藏:



    显示:

  • 相关阅读:
    字符串匹配之BF算法
    python里的反射(自学习)
    python的super()以及父类继承
    @staticmethod
    @classmethod
    scrapy
    mongodb
    js注入提取伪元素选择器
    execjs
    base64解密
  • 原文地址:https://www.cnblogs.com/IPYQ/p/6281410.html
Copyright © 2011-2022 走看看