![]() |
|
Модераторы: Snowy, Alexeis, MetalFan |
![]()
|
|
| artem1987 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 203 Регистрация: 18.7.2006 Где: Калининград Репутация: нет Всего: нет |
где рисовать прогресс бар, чтобы он был ресайзабл, и т.д.
как нормальный прогресс, не пропадал...не вис. спасибо за помощь. --------------------
Don't ask me why, ask me how. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
А чем не устраивает стандартный прогрессбар TProgressBar, он ведь удовлетворяет
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| artem1987 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 203 Регистрация: 18.7.2006 Где: Калининград Репутация: нет Всего: нет |
нужен замороченый, знаешь который рисуется при сканировании диска,
т.е. разными цветами в дискретных позициях, много строчек, сделал в паинтбохе он стирается если во время сканирования открыть др окошко, виснит.че делать? --------------------
Don't ask me why, ask me how. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
Рисовать в OnPaint
|
|||
|
||||
| artem1987 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 203 Регистрация: 18.7.2006 Где: Калининград Репутация: нет Всего: нет |
дело в том, что я графикой не занимаюсь, больше системный программист,
WinAPI, устройства, вот первый раз столкнулся с программированием интерфейса программы. можно поподробнее про OnPaint. что делать по этому событию, как это поможет? --------------------
Don't ask me why, ask me how. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
событие OnPaint возникает каждый раз когда требуется перерисовка экрана, например, когда другое приложение накладывается и стирает содержимое окна. но прще рисовать в TImage, поскольку он сам востонавливает картинку.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| artem1987 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 203 Регистрация: 18.7.2006 Где: Калининград Репутация: нет Всего: нет |
да я так уже и делаю.спасибо.
а по refresh или repaint это событие возникает? --------------------
Don't ask me why, ask me how. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
Да
|
|||
|
||||
| artem1987 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 203 Регистрация: 18.7.2006 Где: Калининград Репутация: нет Всего: нет |
получается каждый раз разный Image надо рисовать.
я хотел бы, чтоб при выполнении какой-либо операции(по завершении) вызывалась ф-я подрисовки ещё одной позиции в прогресс бар, который бы менял масштабируемость прямо на лету при изменениии размеров окна. чем мне лучше воспользоваться? --------------------
Don't ask me why, ask me how. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
Создай TBitmap. Дорисовывай на него.
А в онпаинт копируй этот битмап на свой котрол. Так уж устроена винда - при отрисовке нужно рисовать всё целиком. |
|||
|
||||
| artem1987 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 203 Регистрация: 18.7.2006 Где: Калининград Репутация: нет Всего: нет |
я сделал так чтобы он ресайз с битмапа постоянно копировалось на канву пэйнтбокса
с пересчетом масштаба, а в он шоу последнее состояние битмапа--->задумка работает, в поряде. но исполнение не нравится- слишком сильно мерцает изображение при ресайзе. есть ли от этого спасение? --------------------
Don't ask me why, ask me how. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
Это скорее всего операция изменения размеров работает медедленно, можно вообще во время изменения размеров не прорисовывать картинку или делать отрисовку с задержкой (чтоб не каждый кадр рисовать).
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| artem1987 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 203 Регистрация: 18.7.2006 Где: Калининград Репутация: нет Всего: нет |
я видел как у BinaryBiz этот progressbar нормально ресайзится.
а мне надо ещё и текущую инфу отображать. сильно поможет задержка отрисовки? Добавлено @ 12:49 у меня на progressbare 2 цвета : бэкграунд и полосочки, так вот мерцвет цветом бэка... --------------------
Don't ask me why, ask me how. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
А не пробовал без ресайза обойтись?
Подготовить уже нужный размер битмапа и рисовать на нем, с поправкой на размер - так явно быстрее будет. Кроме того, попробуй DoubleBuffered := true или вручную использовать BeginPaint - EndPaint |
|||
|
||||
| artem1987 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 203 Регистрация: 18.7.2006 Где: Калининград Репутация: нет Всего: нет |
а ресайз , кровъ из носу надо- задание такое.
кстати, помогла отрисовка через кадр.спасибо DoubleBuffered := true------>это что за конструкция, а куда её ... того. --------------------
Don't ask me why, ask me how. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Звук, графика и видео" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |