Jak ukryć program z paska zadań
Adam Boduch
Pasek musi być ukryty zanim stworzone zostaną formy. Poniższy kod należy więc dodać do źródła projektu ( Project -> View Source ). Tak powinna wyglądać całość:
program Project1;
uses
Forms,
Windows,
Unit1 in 'Unit1.pas' {Form1};
{$R *.RES}
var
Ex : Integer;
begin
Application.Initialize;
Ex:=GetWindowLong(Application.Handle, GWL_EXSTYLE);
SetWindowLong(Application.Handle,GWL_EXSTYLE,
Ex or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Program jest ukrywany z paska zadań dzięki parametrowi WS_EX_TOOLWINDOW.
Przed Application.Run napisać tylko to: Application.Title := ''. I proszę bardzo.. działa
W nowszych wersjach delphi jest nawet taka linijka:
Application.MainFormOnTaskbar := True;
Też można z niej skorzystać
ShowWindow(Application.Handle,SW_HIDE) działa znakomicie także w najnowszej wersjo BDS jako że jest fukcją API :)
Mi po wpisaniu do kodu ShowWindow(Application.Handle,SW_HIDE); aplikacja jest nadal na pasku. Dajcie jakis pozadny przyklad
ukrywanie/pokazywanie belki w trakcie dzialania programu (nalezy dodac ShellApi do uses):
ShowWindow(Application.Handle,SW_HIDE); //ukrycie
ShowWindow(Application.Handle,SW_SHOW); //pokazanie
moze zamiast application.handle daj form.handle? :D
Kod umieszczony w onCreate Formy też działa.
Jak ukryć belkę programu po stworzeniu formy?