亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

PyQt5 調(diào)研(一)

Jonathan Shieber / 3294人閱讀

摘要:首先,定義自定義信號(hào)其中來(lái)自于信號(hào)會(huì)攜帶兩個(gè)字符串類型的數(shù)據(jù)。然后,在子窗口發(fā)射這個(gè)信號(hào)最終,在父窗口槽函數(shù)接受這個(gè)信號(hào)就是槽函數(shù),用來(lái)接受信號(hào)

工具準(zhǔn)備

編輯器: vscode OR Pycharm

vscode需要安裝PYQT Integration 以及 Python 插件, Pycharm需要配置External Tools
pycharm配置External Tools

配置Qtdesigner.exe

program選擇Qtdesigner.exe的路徑, Arguments: $FilePath$, work directory: $FileDir$

配置PyUI, 將UI文件轉(zhuǎn)換成Python文件

program: python, Arguments: -m PyQt5.uic.pyuic  $FileName$ -o $FileNameWithoutExtension$.py, work direactory: $FileDir$
布局繪制

沒(méi)有布局的控件不會(huì)隨著窗口的改變而改變,關(guān)于布局,看這個(gè)Qt布局博客

第一個(gè)控件: tableView
self.sm = QtGui.QStandardItemModel() // 標(biāo)準(zhǔn)數(shù)據(jù)模型

# 設(shè)置數(shù)據(jù)頭欄名稱
self.sm.setHorizontalHeaderItem(0, QtGui.QStandardItem("Name"))
self.sm.setHorizontalHeaderItem(1, QtGui.QStandardItem("NO."))

# 設(shè)置數(shù)據(jù)條目
self.sm.setItem(0, 0, QtGui.QStandardItem("張三"))
self.sm.setItem(0, 1, QtGui.QStandardItem("20120202"))

self.sm.setItem(1, 0, QtGui.QStandardItem("李四"))
self.sm.setItem(1, 1, QtGui.QStandardItem("20120203000000000000000"))

self.sm.setItem(2, 0, QtGui.QStandardItem("李四"))
self.sm.setItem(2, 1, QtGui.QStandardItem("20120203000000000000000"))

self.sm.setItem(3, 0, QtGui.QStandardItem("李四"))
self.sm.setItem(3, 1, QtGui.QStandardItem("20120203000000000000000"))

self.sm.setItem(4, 0, QtGui.QStandardItem("李四"))
self.sm.setItem(4, 1, QtGui.QStandardItem("20120203000000000000000"))

self.sm.setItem(5, 0, QtGui.QStandardItem("李四"))
self.sm.setItem(5, 1, QtGui.QStandardItem("20120203000000000000000"))

# 設(shè)置條目顏色和字體
self.sm.item(0, 0).setForeground(QtGui.QBrush(QtGui.QColor(255, 0, 0)))

self.sm.item(3, 1).setBackground(QtGui.QBrush(QtGui.QColor(255, 255, 0)))

# 按照編號(hào)排序
self.sm.sort(1, QtCore.Qt.DescendingOrder)

# 將數(shù)據(jù)模型綁定到QTableView
self.tableView.setModel(self.sm)

for c in range(self.tableView.horizontalHeader().count()):
    self.tableView.horizontalHeader().setSectionResizeMode(c) // 設(shè)置列寬自動(dòng)填充·

關(guān)于動(dòng)態(tài)新增行:對(duì)model進(jìn)行操作就行,tableView會(huì)感應(yīng)到數(shù)據(jù)變化

信號(hào)與槽

知道vue,react的事件機(jī)制會(huì)對(duì)pyqt的信號(hào)與槽機(jī)制的理解提供方便。

首先,定義自定義信號(hào)

insertSuccess = pyqtSignal(str, str)

其中pyqtSignal來(lái)自于from PyQt5.QtCore import pyqtSignal, insertSuccess信號(hào)會(huì)攜帶兩個(gè)字符串類型的數(shù)據(jù)。

然后,在子窗口發(fā)射這個(gè)信號(hào)

self.name = self.lineEdit.text()
self.no = self.lineEdit_2.text()
self.hide()
self.insertSuccess.emit(self.name, self.no)

最終,在父窗口槽函數(shù)接受這個(gè)信號(hào)

 myDia = childWindow(self)
 myDia.insertSuccess.connect(self.deal_insert)

self.deal_insert就是槽函數(shù),用來(lái)接受信號(hào)

def deal_insert(self, name, no):
    print("name: ", name, "no: ", no)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/43947.html

相關(guān)文章

  • PyQt5 調(diào)研

    摘要:首先,定義自定義信號(hào)其中來(lái)自于信號(hào)會(huì)攜帶兩個(gè)字符串類型的數(shù)據(jù)。然后,在子窗口發(fā)射這個(gè)信號(hào)最終,在父窗口槽函數(shù)接受這個(gè)信號(hào)就是槽函數(shù),用來(lái)接受信號(hào) 工具準(zhǔn)備 編輯器: vscode OR Pycharm vscode需要安裝PYQT Integration 以及 Python 插件, Pycharm需要配置External Tools pycharm配置External Tools 配置...

    Yi_Zhi_Yu 評(píng)論0 收藏0
  • PyQt5 簡(jiǎn)介

    摘要:是由一系列模塊組成。超過(guò)個(gè)類,函數(shù)和方法。有兩種證書(shū),和商業(yè)證書(shū)。包含了窗口系統(tǒng)事件處理圖像基本繪畫(huà)字體和文字類。包含了協(xié)議的類。提供了處理數(shù)據(jù)庫(kù)的工具。廢棄了和的調(diào)用方式,使用了新的信號(hào)和處理方式。不再支持被標(biāo)記為廢棄的或不建議使用的。 本教程的目的是帶領(lǐng)你入門PyQt5。教程內(nèi)所有代碼都在Linux上測(cè)試通過(guò)。PyQt4 教程是PyQt4的教程,PyQt4是一個(gè)Python(同時(shí)支...

    sevi_stuo 評(píng)論0 收藏0
  • 事件和信號(hào)——pyQT5

    摘要:事件目標(biāo)是事件想作用的目標(biāo)。處理事件方面有個(gè)機(jī)制。這個(gè)例子中,我們替換了事件處理器函數(shù)。代表了事件對(duì)象。程序展示信號(hào)發(fā)送實(shí)例能發(fā)送事件信號(hào)。我們創(chuàng)建了一個(gè)叫的信號(hào),這個(gè)信號(hào)會(huì)在鼠標(biāo)按下的時(shí)候觸發(fā),事件與綁定。 事件和信號(hào) 事件 signals and slots 被其他人翻譯成信號(hào)和槽機(jī)制,(⊙o⊙)…我這里還是不翻譯好了。 所有的應(yīng)用都是事件驅(qū)動(dòng)的。事件大部分都是由用戶的行為產(chǎn)生的,...

    張春雷 評(píng)論0 收藏0
  • pyqt5——菜單和工具欄

    摘要:菜單和工具欄這個(gè)章節(jié),我們會(huì)創(chuàng)建狀態(tài)欄菜單和工具欄。是菜單欄工具欄或者快捷鍵的動(dòng)作的組合。程序預(yù)覽工具欄菜單欄包含了所有的命令,工具欄就是常用的命令的集合。把工具欄展示出來(lái)。 菜單和工具欄 這個(gè)章節(jié),我們會(huì)創(chuàng)建狀態(tài)欄、菜單和工具欄。菜單是一組位于菜單欄的命令。工具欄是應(yīng)用的一些常用工具按鈕。狀態(tài)欄顯示一些狀態(tài)信息,通常在應(yīng)用的底部。 主窗口 QMainWindow提供了主窗口的功能,使...

    JinB 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<