日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

pyqt5窗口之间传递信号_pyQT5 实现窗体之间传值的示例

發(fā)布時間:2025/3/15 c/c++ 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pyqt5窗口之间传递信号_pyQT5 实现窗体之间传值的示例 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

準(zhǔn)備

一個MainWindow和一個WidgetForm,總代碼如下

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

from PyQt5 import QtWidgets

from main_windows import Ui_MainWindow

import sys

from wid_defs import my_widgets

from dlg_defs import my_Dialog

class MyWindow(QtWidgets.QMainWindow,Ui_MainWindow):

def __init__(self):

super(MyWindow,self).__init__()

self.setupUi(self)

def openDialog(self):

self.dlg = my_Dialog()

www = self.textEdit.toPlainText()

self.dlg.setT(www)

self.dlg.exec_()

def openWidget(self):

self.wid = my_widgets()

self.wid.pushButton.clicked.connect(self.GetText)

www= self.textEdit.toPlainText()

self.wid.setT(www)

self.wid.show() #close wid form

def GetText(self):

self.textEdit.setText(self.wid.textEdit.toPlainText())

self.wid.close()

if __name__ == "__main__":

app = QtWidgets.QApplication(sys.argv)

mainWindow = MyWindow()

mainWindow.show()

sys.exit(app.exec_())

1 父窗體—子窗體

def slot3(self):

self.dlg = my_Dialog()

www = self.textEdit.toPlainText()

self.dlg.setT(www)

self.dlg.exec_()

1 實(shí)例化子窗體:

self.dlg = my_Dialog()

2 直接將父窗體中的變量:

www = self.textEdit.toPlainText()

3 賦給子窗體的對象:

self.dlg.setT(www)

4 再調(diào)出子窗體

self.dlg.exec_()

運(yùn)行點(diǎn)擊 openDialog按鈕,會將父窗體textEdit中的內(nèi)容傳到子窗體中。

2 子窗體—父窗體

def slot2(self):

#widgetForm

self.wid = my_widgets()

self.wid.pushButton.clicked.connect(self.GetLine)

#dialog

self.dlg = my_Dialog()

self.dlg.buttonBox.accepted.connect(self.GetLine)

www= self.textEdit.toPlainText()

self.wid.setT(www)

self.wid.show()

def GetText(self):

self.textEdit.setText(self.wid.textEdit.toPlainText())

1 實(shí)例化子窗體

self.wid = my_widgets()

2 子窗體按鈕(通常是確認(rèn)按鈕)添加關(guān)聯(lián)到父窗體的函數(shù)Getline()

(1)widgetForm的方法

self.wid.pushButton.clicked.connect(self.GetLine)

(2)Dialog的方法

self.dlg.buttonBox.accepted.connect(self.GetLine)

3 定義getline函數(shù)的內(nèi)容,函數(shù)將在子窗體確認(rèn)按鈕點(diǎn)擊后執(zhí)行

def GetLine(self):

self.textEdit.setText(self.dlg.textEdit.toPlainText())

在子窗體中點(diǎn)擊OK,會將子窗體文本框文字傳遞到父窗體的文本框中

以上這篇pyQT5 實(shí)現(xiàn)窗體之間傳值的示例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持。

總結(jié)

以上是生活随笔為你收集整理的pyqt5窗口之间传递信号_pyQT5 实现窗体之间传值的示例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。