假設我已經使用gui.py檔案中的pyuic5命令生成了gui.ui檔案。 我正在尋找一種在ui_mainwindow主類進行任何結構更改的情況下將主類( ui_mainwindow )方法移動到另乙個名為func.py檔案的方法。 在這裡,我有乙個非常簡單的生成的gui.py :
from pyqt5 import qtcore, qtgui, qtwidgets
class ui_mainwindow(object):
def setupui(self, mainwindow):
mainwindow.setobjectname("mainwindow")
mainwindow.resize(800, 600)
self.centralwidget = qtwidgets.qwidget(mainwindow)
self.centralwidget.setobjectname("centralwidget")
self.pushbutton = qtwidgets.qpushbutton(self.centralwidget)
self.pushbutton.setgeometry(qtcore.qrect(350, 240, 75, 23))
self.lineedit = qtwidgets.qlineedit(self.centralwidget)
self.lineedit.setgeometry(qtcore.qrect(330, 270, 113, 20))
mainwindow.setcentralwidget(self.centralwidget)
self.retranslateui(mainwindow)
qtcore.qmetaobject.connectslotsbyname(mainwindow)
self.pushbutton.clicked.connect(self.buttonclicked)
def buttonclicked(self, mainwindow):
print(self.lineedit.text())
def retranslateui(self, mainwindow):
mainwindow.setwindowtitle(_translate("mainwindow", "mainwindow"))
self.pushbutton.settext(_translate("mainwindow", "pushbutton"))
if __name__ == "__main__":
import sys
mainwindow = qtwidgets.qmainwindow()
ui = ui_mainwindow()
ui.setupui(mainwindow)
mainwindow.show()
我需要將buttonclicked函式移至func.py檔案。 因此,這裡是沒有該功能的gui.py :
from pyqt5 import qtcore, qtgui, qtwidgets
import func
class ui_mainwindow(object):
def setupui(self, mainwindow):
mainwindow.setobjectname("mainwindow")
mainwindow.resize(800, 600)
self.centralwidget = qtwidgets.qwidget(mainwindow)
self.centralwidget.setobjectname("centralwidget")
self.pushbutton = qtwidgets.qpushbutton(self.centralwidget)
self.pushbutton.setgeometry(qtcore.qrect(350, 240, 75, 23))
self.lineedit = qtwidgets.qlineedit(self.centralwidget)
self.lineedit.setgeometry(qtcore.qrect(330, 270, 113, 20))
mainwindow.setcentralwidget(self.centralwidget)
self.retranslateui(mainwindow)
qtcore.qmetaobject.connectslotsbyname(mainwindow)
self.pushbutton.clicked.connect(func.buttonclicked(mainwindow))
def retranslateui(self, mainwindow):
mainwindow.setwindowtitle(_translate("mainwindow", "mainwindow"))
self.pushbutton.settext(_translate("mainwindow", "pushbutton"))
if __name__ == "__main__":
import sys
mainwindow = qtwidgets.qmainwindow()
ui = ui_mainwindow()
ui.setupui(mainwindow)
mainwindow.show()
和func.py :
import gui
def buttonclicked(self, mainwindow):
print(gui.mainwindow.lineedit.text())
最簡單的方法是什麼?
Python 屬性訪問
對於 python 而言,我們知道可以使用 property 這樣的decorator 來實現對於類的屬性訪問的控制。但是這種方法存在乙個限制,即,沒有乙個屬性需要進行屬性控制,就必須新增類似於如下的幾行語句 property defwidth self returnself.width 其實,我們...
Python類屬性,例項屬性
dreamfor的部落格 1.python類資料屬性 定義在類裡面但在函式外面的變數,它們都是靜態的。一段很簡單的 但反應了很多 class a a 1 乙個類裡面有個屬性a a a b a a.a b.a a.a 這個屬效能被例項和類訪問 a.a 2 b.a a.a 改變例項a的屬性a,例項b和類...
Python 類屬性 例項屬性
1.類的三大要素 類名 屬性 方法 屬性又分為例項屬性和類屬性 1 class tool object 2 屬性3 num 045 方法6def init self,new name 7 self.name new name 寫在 init 中的是例項屬性,也是通過方法定義的,是跟著例項物件的 寫在...