Я писал этот скрипт на Python, который в основном устанавливает фон для обоев Windows с помощью ссылок Reddit и определенных переменных, которые вы устанавливаете, таких как ссылки из горячих / лучших за все время / и т. д. и я пишу графический интерфейс с PySide для него, в настоящее время у меня есть 3 файла.
Файл пользовательского интерфейса, сгенерированный QtDesigner output_ui.py
Другой файл, взаимодействующий со сгенерированным файлом пользовательского интерфейса output.py.
И скрипт, который все запускает и устанавливает обои WallDit.py
Когда я запускаю файл output.py, устанавливаю значения внутри графического интерфейса, все работает правильно, значения устанавливаются нормально, но когда я нажимаю кнопку запуска, и скрипт выполняется (WallDit.py) и вызывает функции из output.py значения переменных сбрасываются до значений по умолчанию (т.е. я устанавливаю «Обои», он возвращается к значению по умолчанию «Обои + Обои»).
Например, когда я вызываю эту функцию из 1-го файла, текстовое значение строки субреддита возвращается к значению по умолчанию, а не к тому, которое фактически отображается в графическом интерфейсе:
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, сигнал отправляется и выводится правильное значение, проблема начинается, когда функция вызывается из 1-го файла.
Обновление: если я вызову функцию в любом месте, значение по-прежнему сбрасывается до значения по умолчанию.
def handle_start_btn(self):
if self.start_btn.isDown:
print("Button pressed")
print("inside function: " + MainWindow().handle_subreddit_line())
import WallDit