Текстовый редактор на PyQt
Первая статься про pyqt - Как научиться писать на PyQt?
Вторая статья про pyqt - Создаем планировщик на PyQt
Весь код вы можете посмотреть на моем GitHub
В этой статье мы будем разбираться как работать с файлами, как их открывать, редактировать, сохранять, создавать. Сделаем поле ввода, поле для просмотра текста в файле, сделаем так, чтобы можно было сохранить, создать или открыть файл.
Начнем по традиции с дизайна нашего приложения.
Перетащим Line Edit, Label и Plain Text Edit.
Label - текст
Line Edit - строка, в которой можно писать текст ( мы её будем использовать для ввода файла )
Plain Text Edit - поле для отображения и изменения текста ( мы в нем будем отображать текст файла )
Далее перетащим сетку grid и кнопки.
Затем переместим кнопки в сетку ( это делается перетаскиванием кнопок в красный квадрат ).
После этих манипуляций у нас должно получиться что-то похожее на такое.
Сейчас это выглядит как недоваренная колбаса, но сейчас мы все исправим.
Далее расположите элементы как это будет показано на картинке, найдите centralwidget и сделайте из него сетку.
После нажатия у вас окно должно выглядеть примерно так.
Чуть-чуть поиграемся со шрифтами ( я использую размер текста 11, а шрифт Segoe Script )
Если растянуть окно, то будет увеличиваться только Plain Text Edit . Это выглядит не красиво.
Для того, чтобы это исправить найдите свойство sizePolicy и измените значение расположение по вертикале на Expanding
Я порекомендую также изменить размер текста в Plain Text Edit и Line Edit.
И наконец сделаем так, чтобы при вводе текста в Line Edit текст форматировался не по левому краю, а по центру. Выделите Line Edit и найдите свойство alignment, измените значение выравнивания по горизонтали на AlignHCenter.
Сохраняем наш проект и переходим к написанию кода. Сначала переведем наш ui файл в python.
Первым делом напишем код для открытие файла.
with open(file) as f - дает нам переменную f - это и есть сам файл, мы можем читать файл, изменять его и т.д. В данном контексте мы его читаем при помощи метода read()
При помощи try и except мы ловим исключения.
Напишем функцию для сохранения файла.
f.write() - заносим в файл текст, введенный в plainTextEdit
После этого создадим кнопку для создания файла.
Теперь можете проверять работу приложения.
Весь написанный код можете посмотреть ЗДЕСЬ
Программирование на python
698 постов11.9K подписчиков
Правила сообщества
Публиковать могут пользователи с любым рейтингом. Однако!
Приветствуется:
• уважение к читателям и авторам
• конструктивность комментариев
• простота и информативность повествования
• тег python2 или python3, если актуально
• код публиковать в виде цитаты, либо ссылкой на специализированный сайт
Не рекомендуется:
• допускать оскорбления и провокации
• распространять вредоносное ПО
• просить решить вашу полноценную задачу за вас
• нарушать правила Пикабу