Не запускается программа написанная с применением PyQt5
После переустановки системы перестала запускаться программа написанная на Python + PyQt5.
При попытке запуска в PyCharm, появляется окно
Код файла main:
"""# -- coding: utf-8 --"""
import sys
from PyQt5.QtWidgets import QCalendarWidget, QMainWindow
from zvk_gui import Ui_MainWindow
from PyQt5 import QtWidgets, QtGui
from PyQt5.QtWidgets import QCalendarWidget
class MyWindow(QMainWindow, Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
date = self.calendarWidget.selectedDate()
day_of_week = self.calendarWidget.selectedDate().dayOfWeek()
print(day_of_week)
format_date = 'dd MMMM yyyy'
if day_of_week == 1:
self.label.setText(date.addDays(9).toString(format_date))
self.label_6.setText(date.addDays(8).toString(format_date))
self.label_7.setText(
date.addDays(7).toString(format_date) + '\n' +
date.addDays(6).toString(format_date) + '\n' +
date.addDays(5).toString(format_date)
)
self.label_8.setText(date.addDays(2).toString(format_date))
elif day_of_week == 2:
self.label.setText(date.addDays(9).toString(format_date))
self.label_6.setText(date.addDays(8).toString(format_date))
self.label_7.setText(date.addDays(7).toString(format_date))
self.label_8.setText(date.addDays(2).toString(format_date))
elif day_of_week == 3:
self.label.setText(date.addDays(9).toString(format_date))
self.label_6.setText(date.addDays(8).toString(format_date))
self.label_7.setText(date.addDays(7).toString(format_date))
self.label_8.setText(date.addDays(2).toString(format_date))
elif day_of_week == 4:
self.label.setText(
date.addDays(9).toString(format_date) + '\n' +
date.addDays(10).toString(format_date) + '\n' +
date.addDays(11).toString(format_date)
)
self.label_6.setText(date.addDays(8).toString(format_date))
self.label_7.setText(date.addDays(7).toString(format_date))
self.label_8.setText(
date.addDays(2).toString(format_date) + '\n' +
date.addDays(3).toString(format_date) + '\n' +
date.addDays(4).toString(format_date)
)
else:
self.label.setText(date.addDays(9).toString(format_date))
self.label_6.setText(
date.addDays(8).toString(format_date) + '\n' +
date.addDays(9).toString(format_date) + '\n' +
date.addDays(10).toString(format_date)
)
self.label_7.setText(date.addDays(7).toString(format_date))
self.label_8.setText(date.addDays(2).toString(format_date))
self.calendarWidget.clicked['QDate'].connect(self.show_date_func)
def show_date_func(self, date):
format_date = 'dd MMMM yyyy'
day_of_week = self.calendarWidget.selectedDate().dayOfWeek()
print(day_of_week)
if day_of_week == 1:
self.label.setText(date.addDays(9).toString(format_date))
self.label_6.setText(date.addDays(8).toString(format_date))
self.label_7.setText(
date.addDays(7).toString(format_date) + '\n' +
date.addDays(6).toString(format_date) + '\n' +
date.addDays(5).toString(format_date)
)
self.label_8.setText(date.addDays(2).toString(format_date))
elif day_of_week == 2:
self.label.setText(date.addDays(9).toString(format_date))
self.label_6.setText(date.addDays(8).toString(format_date))
self.label_7.setText(date.addDays(7).toString(format_date))
self.label_8.setText(date.addDays(2).toString(format_date))
elif day_of_week == 3:
self.label.setText(date.addDays(9).toString(format_date))
self.label_6.setText(date.addDays(8).toString(format_date))
self.label_7.setText(date.addDays(7).toString(format_date))
self.label_8.setText(date.addDays(2).toString(format_date))
elif day_of_week == 4:
self.label.setText(
date.addDays(9).toString(format_date) + '\n' +
date.addDays(10).toString(format_date) + '\n' +
date.addDays(11).toString(format_date)
)
self.label_6.setText(date.addDays(8).toString(format_date))
self.label_7.setText(date.addDays(7).toString(format_date))
self.label_8.setText(
date.addDays(2).toString(format_date) + '\n' +
date.addDays(3).toString(format_date) + '\n' +
date.addDays(4).toString(format_date)
)
else:
self.label.setText(date.addDays(9).toString(format_date))
self.label_6.setText(
date.addDays(8).toString(format_date) + '\n' +
date.addDays(9).toString(format_date) + '\n' +
date.addDays(10).toString(format_date)
)
self.label_7.setText(date.addDays(7).toString(format_date))
self.label_8.setText(date.addDays(2).toString(format_date))
if __name__ == "__main__":
app = QtWidgets.QApplication([])
application = MyWindow()
application.show()
sys.exit(app.exec())
На ноутбуке, где все по старому все запускается. Поискал таблетку в интернете. Прочитал, что надо папку platforms создать в папке с программой и туда скопировать файл qwindows.dll - не помогло. Что еще можно сделать?
Ответы (1 шт):
Автор решения: user367654
→ Ссылка
Попробуйте запускать так:
if __name__ == "__main__":
app = QtWidgets.QApplication([])
ex = MyWindow()
ex.show()
app.exec_()
