Мерцание Image

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Alex_new_2030
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 118
Зарегистрирован: 20.02.2003 (Чт) 8:00
Откуда: Kazakhstan

Мерцание Image

Сообщение Alex_new_2030 » 14.10.2003 (Вт) 8:14

Где-то такая тема уже вроде была, но я что-то не могу найти.
если кто видел - можете кинуть ссылку.
Вопрос такой:
У меня 2 Имеджбокса - один (картинка без фона) над другим, организовываю перемещение нижнего имеджбокса относительно верхнего, при этом возникает сильное неприятное мерцание неподвижного верхнего имеджбокса.
Как от этого избавится?
Заранее благодарен.

Ronin_1978
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 05.04.2003 (Сб) 14:42
Откуда: Москва

Сообщение Ronin_1978 » 14.10.2003 (Вт) 9:07

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

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2056
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 15.10.2003 (Ср) 18:21

Не хочу показаться "умником", но может те стоит организовать всё рисование на другом принципе Api Draw например ? :wink:

_NeoN_
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 178
Зарегистрирован: 14.08.2003 (Чт) 9:48
Откуда: Новосибирск

Сообщение _NeoN_ » 15.10.2003 (Ср) 18:28

Некоторые люди почему-то боятся использовать API(со мной раньше тоже такое было :oops: ), а предпочитают более медленные функции Самого ВБ, как PaintPicture...

serix
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 177
Зарегистрирован: 09.11.2002 (Сб) 17:54
Откуда: Russia

Сообщение serix » 16.10.2003 (Чт) 20:55

Я великий и ужасный предсказатель: все это у тебя мерцает под WindowsXP, у меня щас такая же проблемка с image.
(Если я не прав то я великий и ужасный идиот)
Раз уж picture не мерцает то его ставить надо.
З.Ы. На сколько я помню на такую тему, которая где-то в этом форуме была я и отвечал...
ZU

mark+
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 156
Зарегистрирован: 03.07.2003 (Чт) 0:04
Откуда: Kurgan

Сообщение mark+ » 16.10.2003 (Чт) 21:47

А что насчет того, что Picturebox-CONTAINER, а Image - нет? :?: :?: :?:

Alex_new_2030
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 118
Зарегистрирован: 20.02.2003 (Чт) 8:00
Откуда: Kazakhstan

Сообщение Alex_new_2030 » 17.10.2003 (Пт) 6:21

Ты великий и ужасный предсказатель прав - XP. В других ОСках не пробовал.

Я использовать API не точто не боюсь - не знаю как.
Может научите?

Aptere
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 16.10.2003 (Чт) 6:31
Откуда: Россия, Самара, СамГТУ

Re: Мерцание Image

Сообщение Aptere » 18.10.2003 (Сб) 0:07

Alex_new_2030 писал(а):Где-то такая тема уже вроде была, но я что-то не могу найти.
если кто видел - можете кинуть ссылку.
Вопрос такой:
У меня 2 Имеджбокса - один (картинка без фона) над другим, организовываю перемещение нижнего имеджбокса относительно верхнего, при этом возникает сильное неприятное мерцание неподвижного верхнего имеджбокса.
Как от этого избавится?
Заранее благодарен.


Я думаю для этого подойдет api-функция BitBlt.
Если хош - могу кинуть на мыло отсканированный
пример из книжки.

Aptere
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 16.10.2003 (Чт) 6:31
Откуда: Россия, Самара, СамГТУ

Сообщение Aptere » 18.10.2003 (Сб) 0:21

_NeoN_ писал(а):Некоторые люди почему-то боятся использовать API(со мной раньше тоже такое было :oops: ), а предпочитают более медленные функции Самого ВБ, как PaintPicture...


И очень часто функции ВБ вызывают API-функции,
т.е. являются как бы оболочками для API (PaintPicture -> BitBlt).
Поэтому при обращении напрямую к API получается быстрее.... :roll:

Alex_new_2030
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 118
Зарегистрирован: 20.02.2003 (Чт) 8:00
Откуда: Kazakhstan

Сообщение Alex_new_2030 » 20.10.2003 (Пн) 5:25

Aptere - скинь если не трудно.

Alex_new_2030
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 118
Зарегистрирован: 20.02.2003 (Чт) 8:00
Откуда: Kazakhstan

Сообщение Alex_new_2030 » 20.10.2003 (Пн) 13:41

А как у PictureBox'а сделать фон прозрачным.
Вообще задумка была такая:
На 1ой картинке изображен логотип с прозрачным фоном.
На 2ой картинке (находится за 1 ой) изображен фон с градиентной заливкой (или как он там еще называется точно не знаю)
Затем двигаем 2ую картинку относительно 1ой.
На подобе плывущей полоски снизу при загрузке Windows 98, ME, только у меня весь по идее весь фон должен плыть.

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4159
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Сообщение Mikle » 20.10.2003 (Пн) 15:44

Попробуй снизу сделать PictureBox, а сверху Image. PictureBox для Image будет контейнером. Кроме того отфильтруй перерисовки, если картинка сдвигается меньше, чем на 1 пиксель (а не твип).


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Google-бот, SemrushBot и гости: 9

    TopList  
cron