pyqt QT設計師製做關於對話框(軟件版權申明)

1、實驗環境

1.Windows7x64_SP1

2.anaconda2.5.0 + python2.7(anaconda集成,不需單獨安裝)

3.pyinstaller3.0

2、操做步驟

2.1 啓動designer.exehtml

2.2 單擊「文件」 -> 「新建」,彈出「新建窗口對話框」,選擇第一個選項python

2.3 刪除底部的OK Cancel按鈕python2.7

2.4 「Widget Box」工具欄中拖動」Graphics View」控件至如上新建的對話框函數

2.5 Graphics View控件上右擊,選擇「改變樣式表」工具

2.6 彈出的「編輯樣式表」對話框中,選擇「添加資源」 -> 「border-image」ui

2.7 彈出的「選擇資源」對話框,單擊「編輯資源」this

2.8 彈出的「編輯資源」對話框中, 單擊「打開資源文件」url

2.9 彈出的「導入資源文件」對話框,選擇本身生成的*.qrc文件,單擊「打開」。*.qrc文件建立請參考:http://www.javashuo.com/article/p-huweqrqv-gy.htmlspa

2.10 此時將返回至步驟2.8的界面,單擊「OK」按鈕3d

2.11 此時將返回至步驟2.7的界面,選擇須要的圖片,單擊「OK」按鈕

2.12 此時將返回至步驟2.6的界面,單擊「OK」按鈕

2.13 拖動「Graphics View」控件邊框,圖片縮放至合適大小,注:以下圖片從XEL官網下載,請注意版權問題

2.14 「Widget Box」工具欄中拖動」Label」控件至如上新建的對話框

2.15 雙擊控件,添加文字,須要換行時空間右擊,選擇「插入換行符」(控件文字編輯狀態下)

 2.16 拖動「Graphics」和「Label」控件至合適位置,最終效果以下

2.17 單擊「文件」 -> 「文件另存爲」,文件名爲「about.ui」

2.18 生成代碼文件

打開cmd窗口,切換至「about.ui」文件所在文件夾,運行以下命令

pyuic5 -o about.py about.ui

2.19 「about.py」代碼預覽

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

# Form implementation generated from reading ui file 'about.ui'
#
# Created by: PyQt5 UI code generator 5.6
#
# WARNING! All changes made in this file will be lost!

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_Dialog(object):
    def setupUi(self, Dialog):
        Dialog.setObjectName("Dialog")
        Dialog.resize(268, 136)
        Dialog.setModal(False)
        self.graphicsView = QtWidgets.QGraphicsView(Dialog)
        self.graphicsView.setGeometry(QtCore.QRect(10, 10, 241, 51))
        self.graphicsView.setStyleSheet("border-image: url(:/xel.png);")
        self.graphicsView.setObjectName("graphicsView")
        self.label = QtWidgets.QLabel(Dialog)
        self.label.setGeometry(QtCore.QRect(10, 70, 251, 61))
        self.label.setObjectName("label")

        self.retranslateUi(Dialog)
        QtCore.QMetaObject.connectSlotsByName(Dialog)

    def retranslateUi(self, Dialog):
        _translate = QtCore.QCoreApplication.translate
        Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
        self.label.setText(_translate("Dialog", "SmartBit端口占用者查看工具\n"
"Version 1.0.0\n"
"雄立科技 版權全部\n"
"Copyright (C) 2019 Xel.All Rights Reserved."))

import resource                #導入語句由工具自動生成,不建議修改位置

  

2.20 主窗口代碼中調用about對話框,只給出導入語句和槽函數

from about import Ui_Dialog as Ui_About

def about(self):
    dialog = QDialog()
    dialog_help = Ui_About()
    dialog_help.setupUi(dialog)
    dialog.setFixedSize(dialog.width(), dialog.height())                #固定窗口大小,禁止縮放
    dialog.exec_()                                                      #配置爲模態對話框

2.21 須要給對話框添加圖標的,如上代碼改寫以下。QPixmap(":/xel_small.png")使用,請參考:http://www.javashuo.com/article/p-huweqrqv-gy.html

from about import Ui_Dialog as Ui_About

def about(self):
    icon = QtGui.QIcon()
    icon.addPixmap(QtGui.QPixmap(":/xel_small.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)

    dialog = QDialog()
    dialog_help = Ui_About()
    dialog_help.setupUi(dialog)
    dialog.setWindowIcon(icon)                                          #添加ico
    dialog.setFixedSize(dialog.width(), dialog.height())                #固定窗口大小,禁止縮放
    dialog.exec_()                                                      #配置爲模態對話框

2.22 最終效果以下:

相關文章
相關標籤/搜索