|
3 / 2 / 1
Регистрация: 02.05.2014
Сообщений: 92
|
||||||
PyQt4 Создание геометрических фигур и закрашивание их21.03.2016, 00:44. Показов 8588. Ответов 17
Метки нет (Все метки)
Помогите разобраться, нужно чтобы при нажатии на кнопку рисовалась геометрическая фигура и была возможность изменить её заливку.
0
|
||||||
| 21.03.2016, 00:44 | |
|
Ответы с готовыми решениями:
17
Создание геометрических фигур в паскале. Создание геометрических фигур и их изменение Создание геометрических фигур Python 3.4 Win7 x64 |
|
|
|
| 21.03.2016, 13:17 | |
|
Какая фигура?
Обычно перед рисованием у устройства устанавливают кисть, которая QBrush. Чтобы менять - это уже надо делать объекты, наследники QAbstractGraphicsShapeItem. Там есть метод setBrush. На чём рисуете-то? QGraphicsScene я у вас не заметил.
0
|
|
|
|
||
| 21.03.2016, 13:20 | ||
|
QGraphicsScene хорошо приспособлен, именно для того, что топикстартеру нужно. Рисовать и на принтере можно (в смысле, соответствующем ему объекте), но вот поменять цвет фигуры там уже сложновато.
0
|
||
|
|
|||
| 21.03.2016, 13:26 | |||
|
Что бы принудительно перерисовать виджет(применить изменение цвета) нужно вызывать метод update() виджета на котором рисуешь. Добавлено через 21 секунду
0
|
|||
|
|
||||||
| 21.03.2016, 13:51 | ||||||
|
Почему нет?
К примеру в Python3 PyQt5 это так будет выглядеть, все просто:
0
|
||||||
|
|
|||||||
| 21.03.2016, 13:58 | |||||||
|
Ну или такой пример
При чем никто не мешает прорисовку "объектной" но тут предпосылок для объектности я пока не вижу.
0
|
|||||||
|
|
|||
| 21.03.2016, 14:02 | |||
|
0
|
|||
|
|
||
| 21.03.2016, 14:06 | ||
|
Еще раз рисовать можно на любом виджете. Графическая сцена предназначена для более сложных случаев, когда предполагается не только рисование но и манипуляции, когда есть предпосылки для объектности, когда элементов больше чем один, когда объекты комбинируются взаимодействуют, масштабируются, перетаскиваются, прокручиваются итп.
0
|
||
|
|
|||||
| 21.03.2016, 14:19 | |||||
|
0
|
|||||
|
|
|||
| 21.03.2016, 14:56 | |||
|
А это детский лепет. Никто не запрещает использовать QGraphicsScene это также можно решить с помощью него, все зависит от задачи и перспективы развития, требований и простоты проекта. Когда ТС поставит задачу иначе и ответ будет иной.
0
|
|||
|
|
|||
| 21.03.2016, 15:33 | |||
|
Это то что я имел ввиду, ну или управления/менеджмент тонкости перевода и условности.
В любом случае когда речь идет об одной переменной это не серьезно. Очевидно что граф.сцена представляет куда более мощные возможности чем нужно для решения поставленной задачи. И оф. доки:
0
|
|||
|
|
||||||
| 21.03.2016, 16:05 | ||||||
|
Вот с graphics scene:
0
|
||||||
|
3 / 2 / 1
Регистрация: 02.05.2014
Сообщений: 92
|
||||||
| 23.03.2016, 21:36 [ТС] | ||||||
Спасибо за помощь!, а если мне нужно будет создать несколько кнопок и при нажатии на них рисовать разные фигуры? как быть?
0
|
||||||
|
|
||
| 24.03.2016, 07:28 | ||
|
Но вообще не вижу проблем сделать по аналогии. Вы же заменили addRect на addEllipse, значит, ключевой момент поняли.
0
|
||
| 24.03.2016, 07:28 | |
|
Помогаю со студенческими работами здесь
18
Создание классов геометрических фигур, рисование на GDI (MFC) Создание классов геометрических фигур и метода их "полета" Закрашивание фигур точками
Закрашивание фигур: соотношение размеров с обводимой фигурой Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|