Главная страница
    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.007 c
1-32815
zje
2002-04-01 12:07
2002.04.11
Delphi6 и dfm (кодировка unicode)


14-32939
vbazik
2002-03-02 01:47
2002.04.11
Совет по DualHeard video


1-32733
Viktor Erko
2002-03-30 10:35
2002.04.11
ПО для автоматизации документирования текста программы


1-32838
VCL
2002-03-28 16:26
2002.04.11
Меню выбора методов и свойств как в Delphi.


1-32842
guood
2002-03-28 17:46
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский