Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.24;
Скачать: CL | DM;

Вниз

IMAGE   Найти похожие ветки 

 
msys   (2001-12-21 13:30) [0]

ПРИ ДВИЖЕНИИ ИМАГА МИГАЕТ .
КАК ЭТО ПРЕКРАТИТЬ ?
ПОД DELPHI Я НЕ УМЕЮ ПРОРИСОВЫВАТЬ ИМАГУ В ПАМЯТИ.
НАУЧИТЕ !!!


 
olban ©   (2001-12-21 14:16) [1]

Какая разница, Делфи или нет, под Win принципы все одинаковы, ищешь Canvas компонента и на нем рисуешь. А мигает он, скорее всего, потому что стирает старое изображение, а потом рисует новое. А чаше всего можно просто рисовать поверх.


 
Builder ©   (2001-12-21 14:29) [2]

use bitblt


 
Song   (2001-12-24 09:45) [3]

ControlStle:=ControlStyle+[csOpaque];


 
Tolik2002 ©   (2002-01-06 13:23) [4]

А ты пробуй рисовать на Canvs"е, только когда рисуешь в новом месте то не удалей все изображение, а сначала нарисуй новое, а потом только восстанавливай те места, которые "освободились" от твоей картинки.


 
Snake ©   (2002-01-06 14:11) [5]

Извини, кода не помню, но чтобы не мигало, надо забыть про Image. Рисовать надо по принципу DX - на разных экранах. Смысл такой, создаешь некий канвас или bitmap, на нем при помощи, например, Draw, рисуешь нужные объекты, затем, в какой-то момент, при помощи BitBlt рисуешь на нужный канвас, например формы (копируешь), созданный ранее рисунок.


 
MK   (2002-01-06 14:38) [6]

Что-то ничего не понятно...
Во-первых csOpaque куда пихать: в Image или Control, на котором Image
Во-вторых, если Image загружен из файла и перемещается через MouseMove, т.е. именно TImage, а не canvas; то неужели нет механизмов сделать перемещение без мигания?..


 
Snake ©   (2002-01-06 15:33) [7]

Сам контрол Image ты затрахаешься двигать. Может быть и есть какой-то лаз, я не знаю. Но если желаешь, можешь попробовать полезть в API и перехватывать его месааги на перерисовку. И канва никуда не двигается, ты просто на ней рисуешь, что и делается сейчас, только вместо тебя это делает виндовоз, причем как всегда коряво.


 
MK   (2002-01-06 16:34) [8]

Snake, Image я уже двигаю через MouseMove. Причем Image находится на Panel. Картинка, загруженная из файла (что важно), двигается, но мерцает. Если ACDSee у тебя установлен, то можешь сам посмотреть: в Preview прекрасно двигается...


 
Snake ©   (2002-01-06 16:51) [9]

Понял.
1. В ACDSee двигаются images на ScrollBox"е. Можешь сам накидать на эту штуку кучу имэйджев и попробовать - все будет ОК.
2. Картинку в Image ты грузишь хоть и из файла :), но хранится она скорее всего в Image.Picture.Bitmap или Graphic, это не важно, что она из файла. Из файла она прогружается только оди раз. Image - это всего лишь эдакая удобная оболочка для картинок с кучей прибамбасов ;)
3. MouseMove ты можешь отследить у любого TControl, в т.ч. TPanel и рисовать в этом месте все, что хочешь.
Удачи.


 
Yaro ©   (2002-01-07 00:49) [10]

Люди, давайте обсудим принцип "рисование на разных экранах". Я такое под DOC"ом делал на паскале еще, но никак не могу добиться реальных FPS"ов в Delphi. Полставил DelphiX, не могу раздуплиться как работать с помощью DXDraw (поможете? мне массив изобразить надо!!! он изменяется, если это существенно). Рисовал через DXPaintBox, на DeskTop"e, но реальной скорости так и не добился.
Что посоветуете?



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

Текущий архив: 2002.01.24;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.009 c
1-75594
Stix
2002-01-07 21:56
2002.01.24
Русский HELP по Delphi 6


7-75703
Dratvik
2001-10-09 18:35
2002.01.24
Можно ли как-то сделать файл на диске невидимым для Explorer и других


1-75615
swr
2002-01-08 10:26
2002.01.24
меню Project/Resourses в Delphi IDE


3-75538
Xmen
2001-12-19 07:59
2002.01.24
Слияние таблиц это как? Помогите!


3-75503
Андрей1
2001-12-21 09:46
2002.01.24
При инсталяции Oracle 7 (SQL Net Server) на W2KAS этот самый сервер отказывается становиться из-за невозможности удалить нт-сервис для sql-server.