paulenot
@paulenot
Статус пользователя - чайник

Как запустить .py по нажатию кнопки другой программы .py написанной на PyQT5?

В процессе изучения PyQT5 возникло множество вопросов на которые я не могу найти понятного ответа.
Создал главную форму программы в QT Designer, сохранил как main.ui > прогнал через pyuic > получил ui.py.

Я создал второй файл, что бы при преобразовании формы ui в py мне не пришлось все заново писать, по этому запуск главной формы и работы с ней я сделал во втором файле main.py:
from PyQt5 import QtCore, QtGui, QtWidgets
import sys
from os import system as go
from os import getcwd as mainpath
from ui import Ui_MainWindow 

app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
main_path =   "'{}'".format(str(mainpath()))

def addacc():
	go("cd " + main_path + "/ui/ && python3 add-account.py") # вот такой дикий костыль

ui.pushButton.clicked.connect( addacc ) # при нажатии кнопки запускается функция addacc

sys.exit(app.exec_())

Этот метод меня абсолютно не устраивает, хоть и рабочий, при запуске таким методом другого файла основная форма полностью перестает отвечать, пока не закрою открывшуюся форму.

Суть вопроса:
  • Какой самый простой способ вызвать форму *.py
  • Как запускать *.py из вложенной папки?
  • Как лучше всего создавать функцию запуска другой программы python? я на питоне пишу всего месяц, и не могу понять, как правильно запускать QT формы без подвисаний предыдущей формы. Если вы можете посоветовать качественный материал для чайников, то буду очень благодарен.
  • Вопрос задан
  • 91 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Epiphan Video Оттава
от 72 600 usd.
FirstVDS Иркутск
от 50 000 до 80 000 руб.
YLab Тольятти
от 90 000 до 150 000 руб.
19 авг. 2019, в 11:14
2500 руб./за проект
19 авг. 2019, в 10:57
2000 руб./в час
19 авг. 2019, в 10:43
15000 руб./за проект