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

Вниз

Кто нить работал с GetBKcolor? ничего не получается!!!!!!!!!!!!!!   Найти похожие ветки 

 
SuperMatser ©   (2005-08-16 21:29) [0]

Привет!
Никак не могу разобраться как работать с GetBKcolor
Делаю так:
WNH_w:=FindWindow(nil, "Крутая прога");
WinDC:=GetWindowDC(WNH_w);
GetCOl:=GetBkColor(WinDC);
DeleteObject(WinDC);

//===Далее
Rtg:=GetWindowDC(ElementEdit[9].WNH); //==Тут хендл заранее полученного едита
GFont.lfFaceName:="MS Sans Serif";
GFont.lfHeight:=15;
//===For win9x
//SetBkColor(Rtg, RGB(192,192,192)); <<---Вот так работает

//===For winXP
SetBkColor(Rtg, RGB(GetRValue(GetCOl), GetGValue(GetCOl), GetBValue(GetCOl))); <<--Не работает, рисует белым фоном, т.е. не тем что там

HHfont:=CreateFontIndirect(GFont);
SelOBJ:=SelectObject(Rtg, HHfont);

Tfg:=ElementEdit[9].TextWND;
//viewmessage(ElementEdit[8].Size1);
Tfg:=GetObrez(length(Tfg), 1);
PosDt:=1; //ElementEdit[8].Size1;
ExtTextOut(Rtg, PosDt, 1, eto_Clipped, nil, Pchar(Tfg), length(Tfg), 0);
DeleteObject(SelOBJ);
DeleteObject(Rtg);

Кто нибудь сталкивался с этим?


 
SuperMatser ©   (2005-08-16 21:43) [1]

WinDC:=GetWindowDC(WNH_w);
GetCOl:=GetBkColor(WinDC);  <<<<<---Все время возвращает белый цвет, хотя окно серое, в чем трабл?
DeleteObject(WinDC);


 
alpet ©   (2005-08-16 22:37) [2]

Точно белый? Тогда окно и соответственно DC у тебя неверные, сначала разберись на окне своего процесса (например форме).

Return Values
If the function succeeds, the return value is a COLORREF value for the current background color.

If the function fails, the return value is CLR_INVALID.


 
alpet ©   (2005-08-16 22:40) [3]

Потом ты получаешь только цвет который используется для фона выводимого с помощью DC текста, а не тот что используется для закраски она по стиранию фона (WM_ERASEBKGND). Последнее лучше определить через кисть класса (GetClassInfoEx, WNDCLASSEXA.hbrBackground) окна, и то невсегда это может быть верным.



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

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

Наверх




Память: 0.47 MB
Время: 0.064 c
3-1125912944
suharew
2005-09-05 13:35
2005.10.16
Обрыв соединения с БД Interbase


1-1127737984
*Pavel
2005-09-26 16:33
2005.10.16
Аналог ProcessMessage


1-1127735165
DelphiLexx
2005-09-26 15:46
2005.10.16
Растягивание TPanel через ScrollBar


3-1125403395
<Lelik>
2005-08-30 16:03
2005.10.16
Глюки параметров ХП FireBird


14-1127322990
Сергей_Т
2005-09-21 21:16
2005.10.16
Процедура выезда в Европу по приглашению