我一直在編寫這個python腳本,它基本上通過你設置的reddit鏈接和特定變量來設置你的windows壁紙背景,比如hot/top all time/etc 。我正在用PySide爲它寫一個GUI,目前我有3個文件。Python和PySide:從另一個文件調用函數時重置變量值
通過QtDesigner產生的UI文件output_ui.py
與所產生的UI文件output.py
而且運行一切並設置壁紙的腳本進行交互的另一個文件WallDit.py
當我運行output.py文件時,將GUI中的值全部設置爲w orks正確,值設置正確,但是當我單擊開始按鈕並執行腳本(WallDit.py)並從output.py調用函數時,變量值將重置爲默認值(即,默認值)。我設置爲「壁紙」,它會回到默認的「壁紙+壁紙」)。
例如,當我打電話從第一檔這個功能,版(Subreddit)行文本價值被重新設置爲默認,不,這是在GUI上實際顯示的一個:
def handle_subreddit_line(self):
print("subreddit line in output.py: " + self.subreddit_line.text())
return self.subreddit_line.text()
調用函數的代碼:
def get_subreddit_name():
test = MainWindow()
print("test: " + test.handle_subreddit_line())
subreddit = MainWindow().handle_subreddit_line()
return subreddit
注:當我改變價值觀,說subreddit_name線的信號被髮送和正確的價值輸出,當函數從第一個文件名爲問題開始。
更新:如果我在任何地方調用該函數,該值仍然被重置爲默認
def handle_start_btn(self):
if self.start_btn.isDown:
print("Button pressed")
print("inside function: " + MainWindow().handle_subreddit_line())
import WallDit