Да и впровду Вот такое не прячется
| Код | program winmin; uses windows, messages;
{$R *.res}
var wc : TWndClassEx; MainWnd : HWnd; Mesg : TMsg;
function WindowProc(wnd:HWND; Msg : Integer; Wparam:Wparam; Lparam:Lparam):Lresult; stdcall; Begin case msg of wm_destroy : Begin postquitmessage(0); Result:=0; exit; End else Result:=DefWindowProc(wnd,msg,wparam,lparam); end; End;
var xPos,yPos,nWidth,nHeight : Integer;
begin wc.cbSize := sizeof(wc); wc.style := cs_hredraw or cs_vredraw; wc.lpfnWndProc := @WindowProc; wc.cbClsExtra := 0; wc.cbWndExtra := 0; wc.hInstance := HInstance; wc.hIcon := LoadIcon (0, idi_application); wc.hCursor := LoadCursor(0, idc_arrow); wc.hbrBackground := COLOR_BTNFACE + 1; wc.lpszMenuName := nil; wc.lpszClassName := 'WinMin : Main'; RegisterClassEx(wc); xPos :=100; yPos :=150; nWidth :=400; nHeight :=250; MainWnd:=CreateWindowEx( WS_EX_TOPMOST or WS_EX_TOOLWINDOW, 'WinMin : Main', 'Win Min', ws_overlappedwindow, xPos, yPos, nWidth, nHeight, 0, 0, Hinstance, nil );
ShowWindow(MainWnd, CmdShow);
While GetMessage(Mesg,0,0,0) do begin TranslateMessage(Mesg); DispatchMessage(Mesg); end; end.
|
Но попытка установить такое для обычной формы
| Код | procedure TForm1.FormCreate(Sender: TObject); var wstyle : Cardinal; begin wstyle := GetWindowLong(form1.Handle, GWL_EXSTYLE); wstyle := wstyle or WS_EX_TOPMOST or WS_EX_TOOLWINDOW; SetWindowLong(form1.Handle, GWL_EXSTYLE, wstyle); end;
|
ни к чему хорошему не приводит |