Python3.5+PyQt5詞頻統(tǒng)計(二)

UI設計


  • 1菠发、在PyCharm中添加External Tools中添加QtDesigner和PyUIC工具
    打開PyCharm>File>Settings>Tools>External Tools塑猖,單擊+號添加工具角虫,出現(xiàn)下圖界面
    Name:自己定義
    Group:External Tools
    Program:QtDesigner.exe所在位置
    Working directory:$ProjectFileDir$
    QtDesigner

    其他配置如上
    Parameters:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
    PyUIC

    配置完成后會在Tools>External Tools 中顯示出來添加的工具
    External Tools

  • 2、啟動QtDesigner胯陋,新建Main Window窗體
    啟動QtDesinger時将塑,確保電源選項高級設置中可切換動態(tài)顯卡全局設置為最佳性能,我的win10系統(tǒng)A卡顯卡切換成最大化性能將會導致無法啟動QtDesinger糕档,具體原因不清楚
    最佳性能

    Qt5.7中集成QtCreator、QtDesinger拌喉,二者都可以創(chuàng)建UI文件速那,設計界面,本文使用后者尿背,前者功能更強大端仰,有興趣的同學可以嘗試
    QtDesinger

    創(chuàng)建Main Window后,可以在左側看到具體的窗口插件田藐,Qt支持多種小插件荔烧,我還不怎么會使用。將插件拖到中間主體窗口汽久,調整布局即可完成UI設計鹤竭,右側顯示的是窗體屬性和信號槽設計區(qū),使用Qt的信號槽機制可以完成多種邏輯操作景醇。Ctrl+r組合可以預覽界面臀稚。
    UI設計

    我自己設計的原始UI已經刪除,下圖是成品樣子
    UI成品

  • 3三痰、UI設計完成后吧寺,直接使用PyUIC工具生成.py文件,在PyCharm中選中ui文件散劫,然后點擊運行PyUIC即可撮执,以下代碼自動生成。
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'untitled.ui'
#
# Created by: PyQt5 UI code generator 5.7
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_mainWindow(object):
    def setupUi(self, mainWindow):
        mainWindow.setObjectName("mainWindow")
        mainWindow.resize(521, 555)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap("C:\\Python35\\Lib\\site-packages\\cx_Freeze\\samples\\unti\\1.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        mainWindow.setWindowIcon(icon)
        self.centralwidget = QtWidgets.QWidget(mainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(30, 510, 451, 16))
        self.label.setText("")
        self.label.setObjectName("label")
        self.textBrowser_2 = QtWidgets.QTextBrowser(self.centralwidget)
        self.textBrowser_2.setGeometry(QtCore.QRect(230, 80, 251, 401))
        self.textBrowser_2.setObjectName("textBrowser_2")
        self.horizontalLayoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.horizontalLayoutWidget.setGeometry(QtCore.QRect(20, 0, 482, 80))
        self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
        self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
        self.pushButton.setObjectName("pushButton")
        self.horizontalLayout.addWidget(self.pushButton)
        self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
        self.pushButton_2.setObjectName("pushButton_2")
        self.horizontalLayout.addWidget(self.pushButton_2)
        self.pushButton_3 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
        self.pushButton_3.setObjectName("pushButton_3")
        self.horizontalLayout.addWidget(self.pushButton_3)
        self.pushButton_4 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
        self.pushButton_4.setObjectName("pushButton_4")
        self.horizontalLayout.addWidget(self.pushButton_4)
        self.pushButton_5 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
        self.pushButton_5.setObjectName("pushButton_5")
        self.horizontalLayout.addWidget(self.pushButton_5)
        self.pushButton_6 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
        self.pushButton_6.setObjectName("pushButton_6")
        self.horizontalLayout.addWidget(self.pushButton_6)
        self.pushButton_7 = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton_7.setGeometry(QtCore.QRect(41, 220, 75, 23))
        self.pushButton_7.setObjectName("pushButton_7")
        self.lineEdit_2 = QtWidgets.QLineEdit(self.centralwidget)
        self.lineEdit_2.setGeometry(QtCore.QRect(40, 260, 161, 20))
        self.lineEdit_2.setObjectName("lineEdit_2")
        self.layoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.layoutWidget.setGeometry(QtCore.QRect(40, 139, 161, 61))
        self.layoutWidget.setObjectName("layoutWidget")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.layoutWidget)
        self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.label_2 = QtWidgets.QLabel(self.layoutWidget)
        self.label_2.setObjectName("label_2")
        self.verticalLayout_2.addWidget(self.label_2)
        self.lineEdit = QtWidgets.QLineEdit(self.layoutWidget)
        self.lineEdit.setObjectName("lineEdit")
        self.verticalLayout_2.addWidget(self.lineEdit)
        self.progressBar = QtWidgets.QProgressBar(self.centralwidget)
        self.progressBar.setGeometry(QtCore.QRect(40, 490, 441, 23))
        self.progressBar.setProperty("value", 24)
        self.progressBar.setObjectName("progressBar")
        mainWindow.setCentralWidget(self.centralwidget)

        self.retranslateUi(mainWindow)
        self.pushButton_6.clicked.connect(mainWindow.close)
        QtCore.QMetaObject.connectSlotsByName(mainWindow)

    def retranslateUi(self, mainWindow):
        _translate = QtCore.QCoreApplication.translate
        mainWindow.setWindowTitle(_translate("mainWindow", "詞頻統(tǒng)計"))
        self.pushButton.setText(_translate("mainWindow", "打開文檔"))
        self.pushButton_2.setText(_translate("mainWindow", "統(tǒng)計詞頻"))
        self.pushButton_3.setText(_translate("mainWindow", "批量查詢"))
        self.pushButton_4.setText(_translate("mainWindow", "清除所有"))
        self.pushButton_5.setText(_translate("mainWindow", "保存結果"))
        self.pushButton_6.setText(_translate("mainWindow", "退出程序"))
        self.pushButton_7.setText(_translate("mainWindow", "查詢"))
        self.label_2.setText(_translate("mainWindow", "輸入查詢單詞"))

添加圖標icon.addPixmap(QtGui.QPixmap(path), QtGui.QIcon.Normal, QtGui.QIcon.Off)
UI中加入六個PushButton組成第一排基本操作按鈕
一個Label提示輸入查詢單詞
另一個Label在最下方顯示統(tǒng)計單詞耗費的時間
UI右側是一個Text Browser顯示統(tǒng)計結果
最下方還有一個進度條ProgressBar

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末舷丹,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子蜓肆,更是在濱河造成了極大的恐慌颜凯,老刑警劉巖谋币,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異症概,居然都是意外死亡蕾额,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門彼城,熙熙樓的掌柜王于貴愁眉苦臉地迎上來诅蝶,“玉大人,你說我怎么就攤上這事募壕〉骶妫” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵舱馅,是天一觀的道長缰泡。 經常有香客問我,道長代嗤,這世上最難降的妖魔是什么棘钞? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮干毅,結果婚禮上宜猜,老公的妹妹穿的比我還像新娘。我一直安慰自己硝逢,他們只是感情好姨拥,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著趴捅,像睡著了一般垫毙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拱绑,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天综芥,我揣著相機與錄音,去河邊找鬼猎拨。 笑死膀藐,一個胖子當著我的面吹牛,可吹牛的內容都是我干的红省。 我是一名探鬼主播额各,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼吧恃!你這毒婦竟也來了虾啦?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎傲醉,沒想到半個月后蝇闭,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡硬毕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年呻引,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片吐咳。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡逻悠,死狀恐怖,靈堂內的尸體忽然破棺而出韭脊,到底是詐尸還是另有隱情童谒,我是刑警寧澤,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布乾蓬,位于F島的核電站惠啄,受9級特大地震影響,放射性物質發(fā)生泄漏任内。R本人自食惡果不足惜撵渡,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望死嗦。 院中可真熱鬧趋距,春花似錦、人聲如沸越除。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽摘盆。三九已至翼雀,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間孩擂,已是汗流浹背狼渊。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留类垦,地道東北人狈邑。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像蚤认,于是被迫代替她去往敵國和親米苹。 傳聞我的和親對象是個殘疾皇子扮匠,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內容

  • afinalAfinal是一個android的ioc秘噪,orm框架 https://github.com/yangf...
    passiontim閱讀 15,401評論 2 45
  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,358評論 0 17
  • 人生總需幾位雅友以意傳世外桃源计雌,雅友如香茗,靜若處子動也妖嬈亏较! 友人品香 初燃渺渺升起莺褒, 欲直上而后妖嬈, 婉轉隨...
    泉light閱讀 765評論 0 0
  • 好久沒有涂鴉你辣,今天下班吃了大師傅做的大盤雞巡通,出門天已經大黑,伴著路燈走回家舍哄,在樓下的時候宴凉,剛好一眼瞅到自己的窗戶,...
    默姑娘閱讀 272評論 1 1
  • 這個暑假我非常有幸在市政府見習表悬,官方的來說:非常感謝學校給我這個難得的機會弥锄,讓我可以學到這么多東西,巴拉巴拉巴拉蟆沫。...
    菜菜小仙女閱讀 186評論 0 1