PyQt5. Открытие файла с помощью программы
У меня есть программа на PyQt5(блокнот). Я хочу чтобы при открытии файла .txt текст из него автоматически попадал в QTextEdit. Как это сделать?
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
Я не знаю, почему вы не показали какая у вас есть программа на PyQt5(блокнот).
Я понял вашу задачу так:
import sys
from PyQt5 import QtCore, QtWidgets
editorProgram = 'notepad' # notepad
class ListenWindow(QtWidgets.QWidget):
def __init__(self, parent=None):
super(ListenWindow, self).__init__(parent)
self.button_listen = QtWidgets.QPushButton('Выбрать файл', self)
font1 = self.button_listen.font()
font1.setPointSize(10)
self.button_listen.setFont(font1)
self.button_listen.setFixedSize(200, 50)
self.button_listen.clicked.connect(self.startToListen)
self.v_box1 = QtWidgets.QVBoxLayout(self)
self.v_box1.addWidget(self.button_listen)
def startToListen(self):
file, _ = QtWidgets.QFileDialog.getOpenFileName(self,
'Open File',
'./',
'py Files (*.py);;Text Files (*.txt)')
if not file:
return
process = QtCore.QProcess(self)
process.start(editorProgram, [file])
self.setEnabled(False)
process.finished.connect(lambda: self.setEnabled(True))
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = ListenWindow()
window.setWindowTitle('notepad file-listener')
window.show()
sys.exit(app.exec_())
