Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Мерцание рисунка 
V
    Опции темы
Spectre
Дата 18.1.2006, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 18.1.2006
Где: Беларусь, г. Минс к

Репутация: нет
Всего: нет



Я знаю что поставив объект picture я от мерцания избавлюсь, но у меня проблема. Мое изображение не имеет фона и когда я его вставляю в image то все нормально, а как только в picture то у картинки свой фон появляется что мне мешает. Не подскажете как убрать мерцание у image или убрать фон у picture?
PM MAIL WWW ICQ   Вверх
СВА
Дата 19.1.2006, 06:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 9.1.2006

Репутация: нет
Всего: нет



Цитата

Рисовать надо на *.picture при чём *.AutoRedraw = True, чтобы графика не мигала.
Все картинки полей и всяких там юнитов загружаем в массив PictureBox'ов. picP(*).picture = loadpicture(...), чтобы вообще ничего не тормозило (и у всех эл. массива *.AutoSize = True)!
Чтобы нарисовать прозрачную картику (к примеру, с фоном vbRed), надо делать так:
TBLT Form1.hDC, 0, 0, picP(*).Width, picP(*).Height, picP(*).hDC, 0, 0, picP(*).Width, picP(*).Height, vbRed

При этом в модуле объяви:
Declare Function TBLT Lib "Msimg32.dll" Alias "TransparentBlt" ( _
ByVal hdcDest As Long, ByVal nXOriginDest As Long, _
ByVal nYOriginDest As Long, ByVal nWidthDest As Long, _
ByVal nHeightDest As Long, ByVal hdcSrc As Long, _
ByVal nXOriginSrc As Long, ByVal nYOriginSrc As Long, _
ByVal nWidthSrc As Long, ByVal nHeightSrc As Long, _
ByVal crTransparent As Long) As Boolean

PM MAIL   Вверх
BorisVorontsov
Дата 21.1.2006, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Thinker
**


Профиль
Группа: Комодератор
Сообщений: 714
Регистрация: 3.11.2005
Где: Молдавия, г. Киши нёв

Репутация: 5
Всего: 10



Цитата(Spectre @ 18.1.2006, 15:18 Найти цитируемый пост)

Не подскажете как убрать мерцание у image или убрать фон у picture?


Два изображения, одно из которых - маска в виде чёрного котура.

Код

                BitBlt picMain.hdc, 0, 0, picMain.Width, _
                    picMain.Height, picSrcMask.hdc, 0, 0, vbMergePaint
                
                BitBlt picMain.hdc, 0, 0, picMain.Width, _
                    picMain.Height, picSrc.hdc, 0, 0, vbSrcAnd



--------------------
[code=cpp]
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;
[/code]
PM MAIL ICQ GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0494 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.