|
|
Устанавливает указанный цвет фона для указанного контекста устройства. Если устройство не может отобразить указанный цвет, устанавливается наиболее близкий доступный цвет.
Синтаксис
function SetBkColor(
| hDC, | Color
| ): Number;
|
Параметры
|
Параметр
| Тип
| Описание
|
hDC
| Number
| дескриптор контекста устройства
|
Color
| Number
| цвет в формате RGB Windows API (COLORREF)
|
|
Возвращаемое значение
Предыдущий цвет фона или значение CLR_INVALID (в случае ошибки).
var pns=new TPaintStruct(); var txt_Str="Текст выведен функцией WinAPI ExtTextOut"; var pos_Lst=new Array(); var sz=new TSize();
// Главная форма frm=new TForm(); frm.Caption="JS+ - функция WinAPI SetBkColor"; frm.Width =525; frm.Height=375; frm.WindowProc=new_WndProc;
frm.ShowModal();
// Оконная процедура главной формы function new_WndProc(Sender,Msg,wParam,lParam) { var hWnd=Sender.Handle,owp=Sender.OldWndProc; var fw=frm.ClientWidth,fh=frm.ClientHeight;
switch (Msg) { case WM_PAINT: hDC=BeginPaint(hWnd,pns);
GetTextExtentPoint32(hDC,str="W",1,sz); txt_h=sz.cy; for (i=j=txt_w=0,n=txt_Str.length*2;i<n;i+=2,j++) { GetTextExtentPoint32(hDC,txt_Str.charAt(j),1,sz); txt_w+=w=sz.cx; pos_Lst[i]=w; pos_Lst[m=i+1]=1; txt_h+=pos_Lst[m]; }
SetBkColor(hDC,0xD0E0E0); ExtTextOut(hDC, Math.round((fw-txt_w)/2), Math.round(fh/2), ETO_OPAQUE | ETO_PDY, Rect(10,10,fw-10,fh-10), txt_Str,-1,pos_Lst );
EndPaint(hWnd,pns); return 0;
case WM_DESTROY: SetWindowLong(hWnd,GWL_WNDPROC,owp); }
return CallWindowProc(owp,hWnd,Msg,wParam,lParam); }
|
Совместимость
Windows API
|
JS+ | Руководство пользователя
|
|
|
|
|
|