Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Вниз

Как избавиться от мигания Image?   Найти похожие ветки 

 
PlaZZma   (2002-03-29 16:52) [0]

Я уже наверное надоел, но при изменении содежимого Image(компонент) или его перемещении картинка неприятно мигает, а мне нужно быстро выводить анимационную последовательность. Можно ли от этого избавиться, если да, то как именно, а если нет, то каким ещё способом можно выводить на экран всякого рода картинки?


 
MBo   (2002-03-29 17:00) [1]

Doublebuffered.
иногда можно рисовать в bitmap в памяти и копировать Draw


 
MAxiMum   (2002-03-29 17:02) [2]

Мигает она потому, что при движении курсора мыши вызывается сообщение WM_PAINT, которое заставляет перерисовывать изображение. Советую написать свой компонент, который не будет использовать данное сообщение. А будет зависеть от других сообщение, например, если мышь над компонентом и сдвинулась с места, то следует перерисовать лишь тот маленький кусочек, где была мышь и т.д.
О результатах прошу написать.


 
PlaZZma   (2002-03-29 17:04) [3]

MBo!
Плиз, объясни поподробнее, желательно кодом!
Заранее благодарен.


 
PlaZZma   (2002-03-29 17:08) [4]

MBo!
Плиз, объясни поподробнее, желательно кодом!
Заранее благодарен.


 
PlaZZma   (2002-03-29 17:12) [5]

2 MAxiMum:
Дело в том, что мигает он и во время перемещенмя мыши, и когда она на месте. Мигает он, когда я меняю изображение и когда меняю координаты компонента.


 
MBo   (2002-03-29 17:13) [6]

procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
doublebuffered:=true;//без этого моргает
for i:=1 to 100 do begin
image1.Picture.Loadfromfile("e:\4.bmp");
sleep(20);
refresh;
end;
end;

если нужно многократно выполнять рисование, при необходимости делают так

b:=TBitmap.create;
b.width:=100;
b.height:=100;

b.canvas. ... здесь все рисуем

в конце
Canvas.Draw(30,30,b);//копирует на форму


 
PlaZZma   (2002-03-29 22:30) [7]

Спасибо огромотнейшее



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
1-32740
skovorodka
2002-03-29 14:29
2002.04.11
Как сделать неправильной формы кнопку >:) не надо называть меня л


1-32761
НОВИЧОККККК
2002-03-30 21:13
2002.04.11
ПОМОГИТЕ(СРОЧНО)


14-32946
novomod
2002-02-28 17:18
2002.04.11
О главном.Программист - болезнь,работа,увлечение?


6-32922
Ghost.
2002-01-27 00:20
2002.04.11
Инфа по Winsock


3-32660
TimPasha
2002-03-20 11:44
2002.04.11
Требуется разъяснение!!!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский