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

Вниз

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

 
REL_   (2002-03-22 14:11) [0]

Необходимо сначала "подготовить" картинку, например отрисовав её сначала на BitMap, а затем скопировать содержимое BitMap"а на окно.

Правильно ли подготавливать картинку именно на BitMap"пе или для этого существуют другие контексты.

Если нетрудно, разъясните или приведите пример, как мне сначала создать контекст (например BitMap - причём размеры его должны быть такими же, как и размеры окна на которое будем копировать изображение), залить его неким цветом, а затем откопировать на текущее окно (WinDC)


 
VuDZ ©   (2002-03-22 14:25) [1]

Можно так:

1.
BYTE *b = new BYTE[x * y * 4]; <- тут у тебя массив с точками, на нём ты можешь рисовать графики и пр.
Потом
HBITMAP hBmp = CreateBitmap(x, y, 1, 32, b);
dc - это DC твоей формы
2.
HDC _dc = CreateCompatibleDC(dc);
SelectObject(_dc, hBmp);
3.
BitBlt(dc, x, y, width, height, _dc, 0, 0, SRCCOPY);

т.е. рисуешь в bitmap"e и потом переносишь на экран, а можно так:
<2>
рисуешь типа LineTO, MoveTo, CreatePen, CreateBrush, SetBkMode
<3>

и всё


 
VuDZ ©   (2002-03-22 14:26) [2]

забыл:
<2>
но не делаешь SelectObject()


 
SPeller ©   (2002-03-22 16:51) [3]

hDC:=CreateCompatibleDC(FormDC); //FormDC - Form.Canvas.Handle
hBmp:=CreateCompatibleBitmap(FormDC,Width,Height);
SelectObject(hDC,hBmp);

Затем рисуешь в контекст hDC что-нибудь. Это твое изображение.
Рисовать прямо в форму
BitBlt(FormDC,Left,Top,Width,Height,hDC,0,0,SRCCOPY);

А чтобы не рисовать каждый раз, делаешь Image на всю форму и рисуешь один раз в нём
Image.Canvas.Handle:=hDC;

Обновляться оно само будет.




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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
3-72999
M@X
2002-04-25 15:06
2002.05.23
ADO (dBase), не воспринимает BLOB! Как картинку запихнуть то?


4-73454
АндрейК
2002-03-22 23:15
2002.05.23
API шные функции для работы с БД


1-73183
Катерина
2002-05-14 10:54
2002.05.23
Заголовок окна в ShowMessage


1-73143
Demon-777
2002-05-12 22:45
2002.05.23
Присваивание одного курсора всем компонентам формы


4-73440
AFROLOV
2002-03-20 15:06
2002.05.23
Не работает SetParent