Python3 PyQt5教程(2)

大家關注的教程2來了蚌父。
第一期是代碼布局椎组,現(xiàn)在有更高級的布局方式,那就是Qt5健霹,布局完UI可以用PythonUIC命令轉(zhuǎn)成py文件凡傅,添加import

    app = QApplication(sys.argv)
    widget = QMainWindow(None)
    Ui_MainWindow().setupUi(widget)

    sys.exit(app.exec_())
    pass

1.登陸界面
2.一個QTproject新建多個視圖
3.在窗體中打開新窗體
4.安裝QT

1.登陸

用QT可視化編程拖出來的界面就是這個樣子,用命令pyuic5 -o target.py fromfile.ui轉(zhuǎn)化成py文件肠缔,代碼如下

登陸

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

# Form implementation generated from reading ui file 'mainwindow.ui'
#
# Created by: PyQt5 UI code generator 5.10.1
#
# WARNING! All changes made in this file will be lost!
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2018/5/9 下午1:36
# @Author  : fgyong 簡書:_兜兜轉(zhuǎn)轉(zhuǎn)_  http://www.reibang.com/u/6d1254c1d145
# @Site    : http://fgyong.cn 兜兜轉(zhuǎn)轉(zhuǎn)的技術博客
# @File    : *.py
# @Software: PyCharm


from PyQt5 import QtCore, QtGui, QtWidgets
import sys
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(500, 341)
        MainWindow.move(1500,300)
        MainWindow.setWindowOpacity(1.0)
        MainWindow.setAutoFillBackground(True)
        self.centralWidget = QtWidgets.QWidget(MainWindow)
        self.centralWidget.setObjectName("centralWidget")
        self.accountLabel = QtWidgets.QLabel(self.centralWidget)
        self.accountLabel.setGeometry(QtCore.QRect(80, 110, 60, 21))
        self.accountLabel.setAlignment(QtCore.Qt.AlignCenter)
        self.accountLabel.setObjectName("accountLabel")
        self.pwdLabel = QtWidgets.QLabel(self.centralWidget)
        self.pwdLabel.setGeometry(QtCore.QRect(80, 150, 60, 21))
        self.pwdLabel.setAlignment(QtCore.Qt.AlignCenter)
        self.pwdLabel.setObjectName("pwdLabel")
        self.account = QtWidgets.QLineEdit(self.centralWidget)
        self.account.setGeometry(QtCore.QRect(140, 110, 191, 21))
        self.account.setObjectName("account")
        self.password = QtWidgets.QLineEdit(self.centralWidget)
        self.password.setGeometry(QtCore.QRect(140, 150, 191, 21))
        self.password.setObjectName("password")
        self.pushButton = QtWidgets.QPushButton(self.centralWidget)
        self.pushButton.setGeometry(QtCore.QRect(140, 191, 201, 41))
        self.pushButton.setObjectName("pushButton")
        MainWindow.setCentralWidget(self.centralWidget)
        self.menuBar = QtWidgets.QMenuBar(MainWindow)
        self.menuBar.setGeometry(QtCore.QRect(0, 0, 500, 22))
        self.menuBar.setFocusPolicy(QtCore.Qt.ClickFocus)
        self.menuBar.setContextMenuPolicy(QtCore.Qt.ActionsContextMenu)
        self.menuBar.setInputMethodHints(QtCore.Qt.ImhNone)
        self.menuBar.setObjectName("menuBar")
        MainWindow.setMenuBar(self.menuBar)
        self.statusBar = QtWidgets.QStatusBar(MainWindow)
        self.statusBar.setObjectName("statusBar")
        MainWindow.setStatusBar(self.statusBar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        MainWindow.show()

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "登陸"))
        self.accountLabel.setText(_translate("MainWindow", "賬號"))
        self.pwdLabel.setText(_translate("MainWindow", "密碼"))
        self.pushButton.setText(_translate("MainWindow", "登陸"))

if __name__ == '__main__':
    app = QApplication(sys.argv)
    widget = QMainWindow(None)
    Ui_MainWindow().setupUi(widget)

    sys.exit(app.exec_())
    pass

2.一個QTproject新建多個視圖

如圖:


新建UI

然后在源文件->main.cpp 導入類夏跷,

#include "mainwindow.h"
#include "dialog.h"http://新建的文件
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;//默認的文件
    Dialog d;//新建的文件

//    w.show();//默認的注釋掉
    d.show();//新建的文件show

    return a.exec();
}

然后選擇新建的 Dialog.ui文件點擊運行按鈕,運行的就是Dialog視圖

4.在窗體中打開新窗體


class Example(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initGUI();
#這一句比較關鍵明未,先聲明這個窗體2等到需要show的時候在展示出來槽华。
        self.child = Exaple2()
def initGUI(self):
    btn = QPushButton('打開窗體', self)
        btn.setToolTip('這是個btn')
        btn.resize(btn.sizeHint())
        btn.clicked.connect(self.showSecond)
   def showSecond(self):
        self.child.show()

#第二個窗口
class Exaple2(QWidget):
    def __init__(self):
        super().__init__()
        self.configUI()
    def configUI(self):
        self.lable = QLabel('我是第二個窗體', self)
        self.lable.setWordWrap(True)  # 自動換行
#設置frame
        self.lable.setGeometry(50, 100, 200, 50)
#設置新窗體frame
        self.setGeometry(500,500,300,300);

4.安裝QT

下載QT5.*
下載QT5
因為下載的dmg直接點下一步下一步安裝完成
QT的官方Demo

5.新建工程

1.第一步


第一步

2.第二步


第二步

3.第三步
image.png

4.第四步 拖拽控件


image.png

5.點擊運行
image.png

6.效果圖


image.png
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市趟妥,隨后出現(xiàn)的幾起案子猫态,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件亲雪,死亡現(xiàn)場離奇詭異勇凭,居然都是意外死亡,警方通過查閱死者的電腦和手機义辕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門虾标,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人灌砖,你說我怎么就攤上這事璧函。” “怎么了基显?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵蘸吓,是天一觀的道長。 經(jīng)常有香客問我撩幽,道長库继,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任摸航,我火速辦了婚禮制跟,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘酱虎。我一直安慰自己雨膨,他們只是感情好,可當我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布读串。 她就那樣靜靜地躺著聊记,像睡著了一般。 火紅的嫁衣襯著肌膚如雪恢暖。 梳的紋絲不亂的頭發(fā)上排监,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天,我揣著相機與錄音杰捂,去河邊找鬼舆床。 笑死,一個胖子當著我的面吹牛嫁佳,可吹牛的內(nèi)容都是我干的挨队。 我是一名探鬼主播,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼蒿往,長吁一口氣:“原來是場噩夢啊……” “哼盛垦!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起瓤漏,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤腾夯,失蹤者是張志新(化名)和其女友劉穎颊埃,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝶俱,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡班利,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了跷乐。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片肥败。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖愕提,靈堂內(nèi)的尸體忽然破棺而出馒稍,到底是詐尸還是另有隱情,我是刑警寧澤浅侨,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布纽谒,位于F島的核電站,受9級特大地震影響如输,放射性物質(zhì)發(fā)生泄漏鼓黔。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一不见、第九天 我趴在偏房一處隱蔽的房頂上張望澳化。 院中可真熱鬧,春花似錦稳吮、人聲如沸缎谷。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽列林。三九已至,卻和暖如春酪惭,著一層夾襖步出監(jiān)牢的瞬間希痴,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工春感, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留砌创,地道東北人。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓鲫懒,卻偏偏與公主長得像纺铭,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子刀疙,可洞房花燭夜當晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容

  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,424評論 0 17
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,167評論 25 707
  • Qt是屬于一個跨平臺的GUI開發(fā)軟件扫倡,支持的平臺有Unix谦秧、Linux竟纳、Windows/WinCE、IOS等疚鲤。 Q...
    一葉之界閱讀 8,162評論 0 17
  • 之前寫過兩篇文章锥累,介紹了使用python+paramiko用腳本的方式,自動部署替換文件集歇。但是腳本寫出來后桶略,沒有得...
    邁阿密小白閱讀 2,449評論 0 2
  • 我與豆同學吃早餐际歼,豆同學看著他面前的臉譜說,“我的情緒是開心姑蓝,還有平和鹅心。媽媽,你是哪張臉纺荧?” 我掃視搜尋看自己的目...
    鄭海玲Irene閱讀 538評論 0 0