记录一下,使用pyqt的使用

一 mac 下的pycharm配置pyqt5步骤

第一步:首先安装QTDesigner:

Qt Designer Download for Windows and Mac

第二步:pycharm下添加pyqt5和qt5-tools

(pyqt5比较大,安装比较慢,最好不要黑屏)

配置外部工具:

 

 

Program:/Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8(python安装路径)

Arguments:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py

第三步:使用

在创建的project右键中选择External Tools 中选择QT Designer,就会跳转到QTDsigner中进行设计

关于这个软件的使用可以自己找资料详细学习,不过多介绍

 

 

我做的工具界面

 

保存后会生成该名称的一个ui文件,但是没有办法执行,我们后面需要把它转换为python文件

我的如下:

<?xml version="1.0" encoding="UTF-8"?>

<ui version="4.0">

<class>MainWindow</class>

<widget class="QMainWindow" name="MainWindow">

  <property name="geometry">

   <rect>

    <x>0</x>

    <y>0</y>

    <width>295</width>

    <height>316</height>

   </rect>

  </property>

  <property name="windowTitle">

   <string>MainWindow</string>

  </property>

  <widget class="QWidget" name="centralwidget">

   <layout class="QVBoxLayout" name="verticalLayout_2">

    <item>

     <layout class="QVBoxLayout" name="verticalLayout">

      <item>

       <widget class="QTextEdit" name="textEdit">

        <property name="placeholderText">

         <string>path:</string>

        </property>

       </widget>

      </item>

      <item>

       <layout class="QHBoxLayout" name="horizontalLayout">

        <item>

         <widget class="QPushButton" name="y_but">

          <property name="text">

           <string>yes</string>

          </property>

         </widget>

        </item>

        <item>

         <widget class="QPushButton" name="n_but_2">

          <property name="text">

           <string>no</string>

          </property>

         </widget>

        </item>

       </layout>

      </item>

      <item>

       <widget class="QPlainTextEdit" name="plainTextEdit">

        <property name="placeholderText">

         <string>info:</string>

        </property>

       </widget>

      </item>

     </layout>

    </item>

   </layout>

  </widget>

  <widget class="QMenuBar" name="menubar">

   <property name="geometry">

    <rect>

     <x>0</x>

     <y>0</y>

     <width>295</width>

     <height>24</height>

    </rect>

   </property>

  </widget>

  <widget class="QStatusBar" name="statusbar"/>

</widget>

<resources/>

<connections/>

</ui>

来调用ui文件实现显示结果

最后的界面:

 


##### 第四步:显示







~~~Python

import sys

from PyQt5.QtWidgets import  QApplication, QMainWindow

from PyQt5.uic import loadUi









app = QApplication(sys.argv)

widget = loadUi('aa.ui')

widget.show()

sys.exit(app.exec_())

~~~

可以直接拖拽文件并显示文件夹路径

 

这个界面已经达到我所需要的结果,你们自己的界面可以自己设计

##### 第五步:ui转py

然后我就需要把它转化为python文件,方便我对里面的功能进行设计

使用pycharm可以,使用下面的命令也可以(打开命令行窗口cd到存放ui文件的路径下)就会在ui文件路径下生成APP.py文件

pyuic5 APP.ui > APP.py

生成的py文件内容如下:

# -*- coding: utf-8 -*-





# Form implementation generated from reading ui file 'APP.ui'

#

# Created by: PyQt5 UI code generator 5.15.4

#

# WARNING: Any manual changes made to this file will be lost when pyuic5 is

# run again.  Do not edit this file unless you know what you are doing.









from PyQt5 import QtCore, QtGui, QtWidgets









class Ui_APP(object):

    def setupUi(self, APP):

        APP.setObjectName("APP")

        APP.resize(314, 320)

        self.verticalLayout_2 = QtWidgets.QVBoxLayout(APP)

        self.verticalLayout_2.setObjectName("verticalLayout_2")

        self.verticalLayout = QtWidgets.QVBoxLayout()

        self.verticalLayout.setObjectName("verticalLayout")

        

        self.textEdit = QtWidgets.QTextEdit(APP)

        self.textEdit.setInputMethodHints(QtCore.Qt.ImhHiddenText|QtCore.Qt.ImhMultiLine)

        self.textEdit.setObjectName("textEdit")

        self.verticalLayout.addWidget(self.textEdit)

        self.horizontalLayout = QtWidgets.QHBoxLayout()

        self.horizontalLayout.setObjectName("horizontalLayout")

        self.n_but = QtWidgets.QPushButton(APP)

        self.n_but.setObjectName("n_but")

        self.horizontalLayout.addWidget(self.n_but)

        self.y_but = QtWidgets.QPushButton(APP)

        self.y_but.setObjectName("y_but")

        self.horizontalLayout.addWidget(self.y_but)

        self.verticalLayout.addLayout(self.horizontalLayout)

        self.plainTextEdit = QtWidgets.QPlainTextEdit(APP)

        self.plainTextEdit.setObjectName("plainTextEdit")

        self.verticalLayout.addWidget(self.plainTextEdit)

        self.verticalLayout_2.addLayout(self.verticalLayout)





        self.retranslateUi(APP)

        QtCore.QMetaObject.connectSlotsByName(APP)





    def retranslateUi(self, APP):

        _translate = QtCore.QCoreApplication.translate

        APP.setWindowTitle(_translate("APP", "APP"))

        self.textEdit.setPlaceholderText(_translate("APP", "path:"))

        self.n_but.setText(_translate("APP", "yes"))

        self.y_but.setText(_translate("APP", "no"))

        self.plainTextEdit.setDocumentTitle(_translate("APP", "info"))

        self.plainTextEdit.setPlaceholderText(_translate("APP", "info:"))


生成的xxx.py直接运行没用,需要创建程序入口

新建main.py

import sys

from PyQt5.QtWidgets import QApplication, QMainWindow

import xxx

if __name__ == '__main__':

    app = QApplication(sys.argv)

    MainWindow = QMainWindow()

    ui = xxx.Ui_MainWindow()

    ui.setupUi(MainWindow)

    MainWindow.show()

    sys.exit(app.exec_())

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值