CODE:#define PS_NULL 5
#define BLACK_COLOR 0
#define WS_VISIBLE 268435456
#define WS_CHILD 1073741824
#define WS_BORDER 8388608
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll" );
external(INT, "GetDC", "GetDC", "User32.dll" );
external(INT, "CreateCompatibleDC", "CreateCompatibleDC", "Gdi32.dll" );
external(INT, "CreateCompatibleBitmap", "CreateCompatibleBitmap", "Gdi32.dll" );
external(INT, "SelectObject", "SelectObject", "Gdi32.dll" );
external(INT, "TransparentBlt", "TransparentBlt", "Msimg32.dll" );
external(INT, "Rectangle", "Rectangle", "Gdi32.dll");
external(INT, "CreateSolidBrush", "CreateSolidBrush", "Gdi32.dll");
external(INT, "CreatePen", "CreatePen", "Gdi32.dll");
int DC, Comp, bitmap;
int brush, brush2, pen;
int b0[2], edit;
createdialog(0);
showdialog(0, "Dialog", 100, 100, 300, 300, 1, 1);
enabletimer(0);
loop()sleep(10);
function getmessage(0, WM_CREATE)
{
brush=CreateSolidBrush(65280); // цвет фона диалога
pen=CreatePen(PS_NULL, 0, 0);
brush2=CreateSolidBrush(BLACK_COLOR);
DC=GetDC(gethwnd(0));
Comp=CreateCompatibleDC(DC);
bitmap=CreateCompatibleBitmap(DC, 300, 300);
SelectObject(Comp, bitmap);
SelectObject(Comp, pen);
SelectObject(Comp, brush);
Rectangle(Comp, 0, 0, 300, 300);
SelectObject(Comp, brush2);
b0[0]=CreateWindow(0, "BUTTON", "Кнопка1", WS_BORDER | WS_CHILD | WS_VISIBLE, 10, 10, 80, 25, gethwnd(0), 0, 0, 0); // создать кнопку
rectangle(10, 10, 80, 25); // вызывать для каждого контрола, передавать координаты контрола
b0[1]=CreateWindow(0, "BUTTON", "Кнопка2", WS_BORDER | WS_CHILD | WS_VISIBLE, 10, 50, 100, 30, gethwnd(0), 0, 0, 0);
rectangle(10, 50, 100, 30);
edit=CreateWindow(0, "EDIT", "edit", WS_BORDER | WS_CHILD | WS_VISIBLE, 120, 10, 100, 20, gethwnd(0), 0, 0, 0);
rectangle(120, 10, 100, 20);
}
function rectangle(int posX, int posY, int posX2, int posY2)
{
Rectangle(Comp, posX, posY, posX+posX2, posY+posY2);
}
CREATE_TIMER(0, 100)
{
TransparentBlt(DC, 0, 0, 300, 300, Comp, 0, 0, 300, 300, BLACK_COLOR);
}
function getmessage(0, WM_COMMAND)
{
if(message.lparam==b0[0])messagebox("Нажата кнопка1");
if(message.lparam==b0[1])messagebox("Нажата кнопка2");
}