Форум программистов, компьютерный форум, киберфорум
К вопросу о ...
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Путевые заметки в процессе познания Python и PyQt/PySide.
Помни - только тег CODE не портит код добавлением пробела в начало пустой строки.
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о построении дерева родительских отношений в PyQt (часть 7)
Запись от iamvic размещена 23.10.2024 в 16:14 / К вопросу о ...
Показов 1048 Комментарии 0
Метки pyqt5, python, python 3

Ещё со времён написания заметки К вопросу о построении дерева родительских отношений в PyQt (часть 2) меня не покидала мысль, что было бы весьма неплохо сделать некую демонстрационную программку, которая по задаваемым пользователем параметрам:

- создавала бы требуемый модальный диалог на базе одного из стандартных...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о построении дерева родительских отношений в PyQt (часть 6)
Запись от iamvic размещена 16.10.2024 в 12:22 / К вопросу о ...
Показов 866 Комментарии 0
Метки pyqt5, python, python 3

Новый вариант, наверное, уже можно назвать приближённым к тому, что задумывалось. Хотя, конечно, пока всё ещё очень сырое и вопросов больше, чем ответов, но надежда есть . По крайней мере, в текущем исполнении слайд-шоу собирается и отображается корректно.

Картинка для привлечения внимания:
Нажмите на изображение для увеличения
Название: eter_slide_show1.jpg
Просмотров: 292
Размер:	21.1 Кб
ID:	8998

Состав пакета (4 файла):

eter_slide_show.py
Python
1
2
3
4
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#
# Eter Slide Show
...
Старый
К вопросу о построении дерева родительских отношений в PyQt (часть 5)
Запись от iamvic размещена 24.09.2024 в 16:23 / К вопросу о ...
Показов 916 Комментарии 0
Метки pyqt5, python, python 3

Изменений накопилось достаточно, благодаря ценным замечаниям voral и, как ни странно, ёмкой формулировке кадровика о том какую роль играет назначение родителей при построении графического интерфейса, поставившей точку в споре моих подопечных . Формулировку кадровика повторять не буду, просто добавлю свои комментарии в тексте одного из виджетов для понимания происходящего.

А вернуться придётся к тому, с чего всё и начиналось.

Испытательную программу scroll_mentor.py...
Старый
К вопросу о транспонировани­­и...
Запись от iamvic размещена 09.09.2024 в 15:14 / К вопросу о ...
Показов 1618 Комментарии 8
Метки python 3

Просто оставлю это здесь в качестве памятки. Заниматься-то транспонированием приходится крайне редко, а тут такой интересный эффект обнаружился с транспонированием списка строк (смотри К вопросу о построении дерева родительских отношений в PyQt (часть 4)). Прямого упоминания о такой возможности я как-то даже и не нашёл (видимо, считается само собой разумеющимся, а для меня оказалось сюрпризом)....
Старый
К вопросу о построении дерева родительских отношений в PyQt (часть 4)
Запись от iamvic размещена 26.08.2024 в 20:00 / К вопросу о ...
Показов 1009 Комментарии 0
Метки pyqt5, python

Ну, вот, сезон почти закончился и настало время разобраться с тем, что я там наколхозил с преобразованием списка строк в матрицу в питоньем стиле (см. К вопросу о построении дерева родительских отношений в PyQt...). Сунулся туда и понял, что за это время я как-то подзабыл последовательность преобразований, как выглядят исходные данные и как должны выглядеть результирующие данные на каждом этапе. Пришлось озадачиться журналированием процесса.

Теперь испытательную программу stddlg_inspect.py...
Старый
К вопросу о построении дерева родительских отношений в PyQt (часть 3)
Запись от iamvic размещена 30.06.2024 в 22:05 / К вопросу о ...
Показов 989 Комментарии 3
Метки pyqt5, python, python 3

Чтобы разобраться во всём происходящем, надо просто посмотреть, как формируются исходные данные для построения дерева:

1. строится цепочка дочерних объектов корневого виджета
2. каждый объект в цепочке может узнать непосредственного родителя вызовом собственного...
Старый
К вопросу о построении дерева родительских отношений в PyQt (часть 2)
Запись от iamvic размещена 28.06.2024 в 19:26 / К вопросу о ...
Показов 1123 Комментарии 0
Метки pyqt5, python, python 3

Как говорится, любопытство сгубило кошку Вот погонял я придуманный инструмент на своих поделках (в том числе и выполненных в системе разделения труда) и всё мне нравилось. Но взбрело же в голову посмотреть в сторону стандартных диалогов. Их же настоящие профи делали. Любопытно же, там-то как всё устроено? И, недолго думая, слепил очередной тест:

stddlg_inspect.py
Python
1
2
3
4
5
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#
# StdDlg Inspect v0.01
import sys
...
Старый
К вопросу о построении дерева родительских отношений в PyQt...
Запись от iamvic размещена 06.06.2024 в 20:36 / К вопросу о ...
Показов 1336 Комментарии 3
Метки pyqt5, python, python 3

Как уже говорилось в предыдущей записи блога построение дерева родительских отношений является неплохим подспорьем для понимания того "как на самом деле всё там внутри устроено". А поскольку исполнителям быстро надоедает рисовать эти схемы, то неплохо было бы иметь возможность генерировать их программным способом.

Например, предложенное...
Старый
К вопросу о применении QScrollArea...
Запись от iamvic размещена 30.05.2024 в 19:09 / К вопросу о ...
Показов 1163 Комментарии 3
Метки pyqt5, python, python 3

Недавно в теме Не работает прокрутка виджета с помощью QScrollArea предложил своё решение.

Никакой реакции это не вызвало, но как-то обосновать всё, что там наворочено, всё-таки надо. Делаю это здесь. Ведь за редкостью использования непременно что-нибудь забудется, а виджет QScrollArea - непростой, обязательные "па...
Старый
К вопросу о "mobilis in mobile" в Qt Designer...
Запись от iamvic размещена 01.04.2024 в 11:22 / К вопросу о ...
Показов 1309 Комментарии 1

Поскольку день сегодня такой (да ещё и понедельник ), то не мог не озадачиться вопросом проверки поведения скроллируемых виджетов (см. предыдущую тему) на некой модельке. Интересно же, как это будет выглядеть живьём?

Нажмите на изображение для увеличения
Название: scroll_split_mod.jpg
Просмотров: 256
Размер:	28.1 Кб
ID:	8617

Вариант дизайнерский (на скорую руку, лишь бы поиграться и как-то оценить):

командная строка
Bash
1
py scroll_split_ui.py
scroll_split_ui.py
Python
1
2
#!/usr/bin/python3
# -*- coding: utf-8
...
Старый
К вопросу о соразмерности виджетов разрешению экрана...
Запись от iamvic размещена 04.03.2024 в 17:02 / К вопросу о ...
Показов 1575 Комментарии 9

Поучаствовал тут в разборках интересного казуса, как раз подходящего для Памятки. Суть-то в том, что версии HDMI весьма различны и в ряде случаев высоконасыщенный элементами управления виджет, разработанный под последнее слово техники, может просто не влезть на экран в случае замены штатного монитора на старенький резервный с гораздо меньшим разрешением.

Оказалось, что можно попробовать использовать скроллинг для таких случаев
Нажмите на изображение для увеличения
Название: scroll_probe_tz.jpg
Просмотров: 202
Размер:	17.2 Кб
ID:	8582
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о применении таблиц стилей в PyQt-приложениях (2).
Запись от iamvic размещена 03.02.2024 в 10:51 / К вопросу о ...
Показов 1068 Комментарии 0
Метки pyqt5, python, python 3, qss

Всё-таки предыдущая тема потребовала продолжения. Хоть и занят был изрядно, но что-то зудело будто лопухнулся я где-то . И, как говорится, предчувствия меня не обманули - ошибка просто детская, неофитская. Надо памятку написать, за редкостью использования всякие тонкости забываются.

А, с другой стороны, если бы там сразу в тексте программы вместо оператора
Python
1
            self.setStyleSheet('background-color: salmon;')
употребил
Python
1
            self.setStyleSheet(
...
Старый
Рейтинг: 1.86. Голосов: 7.
К вопросу о применении таблиц стилей в PyQt-приложениях.
Запись от iamvic размещена 28.12.2023 в 23:25 / К вопросу о ...
Показов 2041 Комментарии 0
Метки pyqt5, python, python 3, qss

В документации как-то не особо акцентируется внимание на том, что приёмы нанесения боевой раскраски на элементы GUI можно разделить на два крайних случая.

В первом случае, загрузка и установка всех таблиц стилей выполняется сразу после старта приложения и действие...
Старый
Рейтинг: 1.33. Голосов: 3.
К вопросу о PyQt и самописных виджетах в Qt Designer.
Запись от iamvic размещена 21.12.2023 в 14:27 / К вопросу о ...
Показов 1161 Комментарии 0

Иногда, работая над каким-нибудь проектом, приходится сталкиваться с ситуацией, когда в различных окнах (диалогах) часть информации, включая элементы управления, полностью дублируется. Эту общую часть вполне можно оформить в виде отдельного класса на базе QWidget и применять его при создании соответствующих окон (диалогов). Например, так, как это сделано в демонстрационной программе, представленной в теме К вопросу о наследовании QWidget и таблицах стилей.

А как быть, если...
Старый
Рейтинг: 2.00. Голосов: 3.
К вопросу о том, какой дизайнер нужен...
Запись от iamvic размещена 22.11.2023 в 14:16 / К вопросу о ...
Показов 1364 Комментарии 3

Если задаться вопросом "Кто способен реализовать программный проект сам, один и без ансамбля?", то можно дать однозначный ответ "это программист" .

У программиста может быть масса недостатков, например, отсутствие художественного вкуса, однобокое знание иностранных языков, невнятная речь, профессиональное...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о неявном назначении родительской опеки...
Запись от iamvic размещена 03.11.2023 в 14:21 / К вопросу о ...
Показов 1327 Комментарии 0
Метки pyqt5, python, python 3

Поучаствовав в обсуждении темы Обновление содержимого в QGroupBox по клику кнопки, вспомнилось мне, что PEP8 рекомендует очень аккуратно решать вопрос
должны ли методы и переменные экземпляра класса (в совокупности: «атрибуты») быть общедоступными или закрытыми (непубличными). Если сомневаетесь, выберите непубличный; позже его легче сделать общедоступным, чем сделать общедоступный атрибут закрытым.
Тем более, что кандидат на опыты есть (см.К вопросу об отслеживании содержимого буфера обмена)...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу об отслеживании содержимого буфера обмена
Запись от iamvic размещена 13.08.2023 в 15:08 / К вопросу о ...
Показов 1290 Комментарии 0
Метки clipboard, pyqt5, python, python 3

А ведь презанятнейшая вещица получилась с подачи Pyther01001 после допиливания до товарного вида первоначального чернового наброска из Работа с clipboard в потоке. Похоже, что очень даже может пригодиться эта поделка:.

clipboard_probe.py
Python
1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/python3
# -*- coding: utf-8 -*-
#
# Clipboard Probe v0.002
import sys
from PyQt5 import (
    QtCore,
    QtGui,
    QtWidgets
    )
 
APP_NAME = 'Clipboard
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу об аналоге заставки при старте PyQt-приложений
Запись от iamvic размещена 01.08.2023 в 14:18 / К вопросу о ...
Показов 1110 Комментарии 0

Однако, весьма неожиданно пришлось лезть сюда в "склерозник", чтобы память освежить, что там у меня было понаписано на заданную тему К вопросу об экранной заставке при старте PyQt-приложений

Даже пришлось каноническую модельку переписать, чтобы помочь человеку внятно изложить свои претензии и желания.

Суть модельки проста - имитируется...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о языковой поддержке в условиях разделения труда...
Запись от iamvic размещена 20.07.2023 в 20:00 / К вопросу о ...
Показов 1923 Комментарии 11

Уж, не знаю почему, но при обсуждении вопросов, возникающих во время написания многоязычных приложений, достаточно часто можно услышать следующую сентенцию, выдаваемую за истину в последней инстанции: "Все требующие перевода литеральные строки (тексты) должны быть записаны...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о "дарах данайцев"... (часть 4 и последняя)
Запись от iamvic размещена 29.06.2023 в 11:46 / К вопросу о ...
Показов 1307 Комментарии 1
Метки opensuse, pyqt5, python, python 3

Предыдущие серии прелюдия, часть 1. часть 2. часть 3.

Ну, блин, ржу не могу!!! Ведь только перечитав то, что я понаписал в третьей части этого сериала, до меня дошло, что и в первой, и во второй частях речь тоже идёт о безобразиях, творимых таким же навязанным системой недекларируемым сервисом,...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о "дарах данайцев"... (часть 3)
Запись от iamvic размещена 26.06.2023 в 22:46 / К вопросу о ...
Показов 1150 Комментарии 0
Метки opensuse, pyqt5, python, python 3

Предыдущие серии: прелюдия, часть 1, часть 2

Надо сразу сказать, что добиться от OpenSUSE более-менее вменяемого поведения, наверное, можно только установкой английского в качестве языка системы (системной локали). Во всех остальных случаях навязываемый системой неафишируемый сервис приводит...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о "дарах данайцев"... (часть 2)
Запись от iamvic размещена 19.06.2023 в 15:02 / К вопросу о ...
Показов 1130 Комментарии 0
Метки opensuse, pyqt5, python, python 3

Поскольку часть 1 завершилась словами
проверить надо, что там Qt Designer творит в таких условиях
то един в трёх лицах (руководитель проекта, программист, дизайнер) ставлю задачу от лица руководителя (канцелярит рулит!!!):
1. целью проекта является наглядная демонстрация факта искажения текста элементов...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о "дарах данайцев"...
Запись от iamvic размещена 18.06.2023 в 15:59 / К вопросу о ...
Показов 1093 Комментарии 0
Метки opensuse, pyqt5, python, python 3

Тема, начатая в заметке К вопросу о локализации приложений PyQt, всё-таки потребовала продолжения. Огромное спасибо коллеге vic5710, написавшему замечательный код Рисование в отдельном окне по параметрам, заданным в текстовых окнах, работающий практически везде (и под Windows, и под MacOs, и под Linux разных сортов), за одним найденным исключением - он абсолютно неработоспособен под OpenSUSE...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о применении модуля tokenize.
Запись от iamvic размещена 11.03.2023 в 21:47 / К вопросу о ...
Показов 1090 Комментарии 0
Метки python, python 3, tokenize

Никогда не знаешь - где найдёшь, где потеряешь Пару лет назад разбирался я с модулем tokenize, пытаясь понять, что из него можно выдавить, и даже приложение кое-какое написал на тему разложения файлов *.py на токены и обратной их сборки из токенов с целью приведения отступов к требованиям...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о разделении труда (часть 4 и последняя).
Запись от iamvic размещена 14.02.2023 в 11:34 / К вопросу о ...
Показов 1496 Комментарии 0

Ну, вот, настало время развязаться с этой моделькой. Все поставленные задачи выполнены:
- смоделирована работа в условиях системы разделения труда,
- показано, что для проведения работ по интернационализации не требуется, чтобы исходное приложение было обязательно...
Старый
Рейтинг: 1.00. Голосов: 2.
К вопросу о разделении труда (часть 3).
Запись от iamvic размещена 09.02.2023 в 16:24 / К вопросу о ...
Показов 1659 Комментарии 1

Что-то как-то в прошлый раз затупил я не по-детски с устатку и чуть не упустил ту шикарную идею, которую Welemir1 предложил в комментариях к первой части:
Цитата Сообщение от Welemir1
Просится же код на вынос в общую функцию куда просто передаем ен или ру или ес/тр/бл чтобы программа поискала такой файлик в нужной папочке и если есть подгрузила нужный язык, если нет взяла дефолтный.
Огромное спасибо, Welemir1, с меня причитается

А реализация этой...
Старый
Рейтинг: 3.00. Голосов: 2.
К вопросу о предварительном просмотре дизайна.
Запись от iamvic размещена 23.12.2022 в 22:33 / К вопросу о ...
Показов 1603 Комментарии 0

Пока возился с Qt Designer-ом, понял, что жутко не хватает простого приложения для просмотра результата творческих усилий . Конечно, можно всё это посмотреть прямо в Qt Designer-е, но он как-то слишком тяжеловесен и избыточен для этих целей. Хотелось чего-нибудь такого, лёгкого - выбрал...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о разделении труда (часть 2).
Запись от iamvic размещена 10.11.2022 в 22:42 / К вопросу о ...
Показов 1195 Комментарии 0

Начало здесь.

Этап 3

И вот в команде уже двое - программист и переводчик, но для кворума явно не хватает третьего - дизайнера Недолго думая, ваяем дизайн главного окна:

team_mwin.ui
Code
1
2
3
4
5
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>main_window</class>
 <widget class="QMainWindow" name="main_window">
  <property
...
Старый
Рейтинг: 3.00. Голосов: 1.
К вопросу о разделении труда (часть 1).
Запись от iamvic размещена 07.11.2022 в 23:20 / К вопросу о ...
Показов 2634 Комментарии 3

Понаблюдав тут в одной конторке за необычно оживлённой суетой, возникшей на почве острой необходимости перевода сайта на иностранный язык, подумал "А как это будет выглядеть с PyQt-приложениями?" Ведь все инструменты для безболезненного решения проблемы есть, а опыта нет. Надо пробовать, надо делать демонстратор.

В качестве донора для демонстратора была выбрана простейшая поделка из По итогам определения начального экрана при старте приложения.

Этап 1
...
Старый
Рейтинг: 2.00. Голосов: 1.
К вопросу о дизайне.
Запись от iamvic размещена 05.10.2022 в 23:08 / К вопросу о ...
Показов 1383 Комментарии 0

Редко пользуюсь Qt Designer-ом, поэтому всё время забываю первое правило дизайнера Сначала выложи весь расклад и только потом пакуй.

Например, для создания нижеприведённого файла дизайна (example.ui):
Code
1
2
3
4
5
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>MainWindow</class>
 <widget class="QMainWindow" name="MainWindow">
  <property name="geometry">
...
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru