Форум: "Начинающим";
Текущий архив: 2016.08.07;
Скачать: [xml.tar.bz2];
ВнизНе создаются цвета(WinApi) Найти похожие ветки
← →
Max (2014-12-04 20:26) [0]Здравствуйте.
var
LBrush, : HBRUSH;
LPen : HPEN;WM_SHOWWINDOW:
begin
GetClientRect(Form3, rrLevel);
DC := GetDC(Form3);
dcL := CreateCompatibleDC(DC);
BufBit := CreateCompatibleBitmap (DC, rr.Right, rr.Bottom);
LBrush := CreateSolidBrush(15780518);
LPen := CreatePen(0,1,15780518);
SetTimer(Form3, TmrL, 20, @TimeM);
end;
WM_CLOSE, WM_DESTROY:
begin// MessageBox(ChervForm,"d","f",0);
ShowWindow(Form3, SW_HIDE);
KillTimer(Form3, TmrL);
......
SendMessage(CbL, BM_SETCHECK, 0, 0);
end
procedure TimeM; stdcall;
begin
SelectObject(dcL, BufBit);
FillRect(dcLevel, rrLevel, LBrush);
BitBlt(DC, 0, 0, rrLevel.Right, rrLevel.Bottom, dcL, 0, 0, srccopy);
end;
Окно вызывается через чекбокс.
Кликаю первый раз - вместо нужного мне цвета, получается серый или белый, да еще и в клеточку или точечку.
закрываю окно(SW_CLOSE) и снова вызываю(WM_SHOW), все ок, цвет нужный мне появился.
C остальными окнами, где рисуестя, такого не происходит.
Почему так????????
← →
Rouse_ © (2014-12-04 20:51) [1]Начни с чтения справки по функции SelectObject, чтоб понять где у тебя теряются GDI объекты.
ЗЫ: а вообще код страшен...
← →
Max (2014-12-04 21:21) [2]
> а вообще код страшен
Я только учусь)))
← →
Игорь Шевченко © (2014-12-05 10:18) [3]Учиться нужно по правильным примерам, например:
http://msdn.microsoft.com/ru-RU/library/windows/desktop/dd162482(v=vs.85).aspx
← →
Max (2014-12-07 13:48) [4]Забыл отписаться. Не правильно указал HDC при WM_SIZE, поправил.Все работает.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2016.08.07;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.001 c