![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Гость_Дмитрий_* |
![]()
Сообщение
#1
|
Гости ![]() |
Хочу нарисовать башенку из прямоугольников определённой высоты в зависимости от положения ползунка (при каждом изменении его положения башенка перерисовывается). Подскажите, пожалуйста, как это реализовать?
|
|
|
igor_bogomolov |
![]()
Сообщение
#2
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
Накидал элементарный примерчик.
Рисуется квадрат в центре окна. Колесиком мыши изменяются его размеры. Примерно то что просили. Что непонятно, спрашиваете ![]() mypaint.h
|
|
|
child_of_bodom |
![]()
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 4 Регистрация: 30.4.2009 Пользователь №: 716 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Спасибо большое за пример!
А можно ли как-то связать объект QDial или QLCDNumber с событием прорисовки окна, чтобы в зависимости от их параметра N рисовалось N квадратиков? |
|
|
igor_bogomolov |
![]()
Сообщение
#4
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
А можно ли как-то связать объект QDial или QLCDNumber с событием прорисовки окна, чтобы в зависимости от их параметра N рисовалось N квадратиков? Да без проблем.Только для начала рекомендую почитать вот это. Для демонстрации переделал свой предыдущий пример. Код компилируемый. paint.h
main.cpp
![]() Сообщение отредактировал igor_bogomolov - 30.4.2009, 2:27 |
|
|
child_of_bodom |
![]()
Сообщение
#5
|
Новичок Группа: Новичок Сообщений: 4 Регистрация: 30.4.2009 Пользователь №: 716 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Спасибо большое! Праздники тут подвернулись, как-то руки не дошли всё испробовать. Всё работает просто супер. Вот только вопросы всё накапливаются и накапливаются... Если я снова хочу прорисовать новую фигуру, а старую удалить, то как это делать? Есть ли такая функция, которая удаляет с окна всё ранее нарисованное?
И как делать анимацию как в последнем сообщении? |
|
|
kwisp |
![]()
Сообщение
#6
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
Спасибо большое! Праздники тут подвернулись, как-то руки не дошли всё испробовать. Всё работает просто супер. Вот только вопросы всё накапливаются и накапливаются... Если я снова хочу прорисовать новую фигуру, а старую удалить, то как это делать? Есть ли такая функция, которая удаляет с окна всё ранее нарисованное? рисуйте поверх ничего не удаляя и всё естественно с самостоятельной отрисовкой фона. этож гиф! Сообщение отредактировал kwisp - 3.5.2009, 22:39 |
|
|
child_of_bodom |
![]()
Сообщение
#7
|
Новичок Группа: Новичок Сообщений: 4 Регистрация: 30.4.2009 Пользователь №: 716 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
igor_bogomolov |
![]()
Сообщение
#8
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
child_of_bodom, давай по порядку. Тот рисунок который ты выше привел, от куда он? Сам рисовал пирамидку?
Если сам, то по идее, вопросов о том, как происходит перерисовка виджета у тебя быть не должно. ![]() а как тогда сделать отрисовку фона? Либо через drawRect, либо через QPalette
Сообщение отредактировал igor_bogomolov - 4.5.2009, 0:19 |
|
|
child_of_bodom |
![]()
Сообщение
#9
|
Новичок Группа: Новичок Сообщений: 4 Регистрация: 30.4.2009 Пользователь №: 716 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Раскрывающийся текст
вот так нарисовал пирамиду, потом хочу нажать кнопку "Start Game!", при этом все элементы с этого окна должны исчезнуть. Раскрывающийся текст
окончательно всё прорисовывается после любого действия: нажать крестик закрытия программы или меню "пуск". хотелось бы рисовалось всё сразу. Раскрывающийся текст
вот так нарисовал пирамиду, потом хочу нажать кнопку "Start Game!", при этом все элементы с этого окна должны исчезнуть. Раскрывающийся текст
окончательно всё прорисовывается после любого действия: нажать крестик закрытия программы или меню "пуск". хотелось бы рисовалось всё сразу.
Причина редактирования: см. справку, указанную в следующем сообщении
|
|
|
igor_bogomolov |
![]()
Сообщение
#10
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: ![]() ![]() ![]() |
Справка по кнопкам и тэгам форума
Со switсh ты конечно жестко замутил. Уж больно огромный код получается. Использую хотябы QMap<int, QColor> Сообщение отредактировал igor_bogomolov - 4.5.2009, 1:17 |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 6.2.2025, 5:25 |