Jak zrobić, aby forma miała osobną belkę na pasku zadań

mleczasz

Czasami może zajść potrzeba, aby na pasku zadań oprócz głównej aplikacji - znalazł się także kolejny formularz naszego programu. Aby to zrealizować w sekcji Private klasy formularza (wersja dla początkujących). A jeszcze lepiej w sekcji Protected (jeśli nie ma sekcji protected to ją dodajemy) dodajemy deklarację:

  protected
     procedure CreateParams(var Params: TCreateParams); override;
  private

W sekcji Implementation ciało procedury powinno wyglądać tak:

procedure TForm1.CreateParams(var Params: TCreateParams);
begin
  inherited;
  Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW and (not WS_EX_TOOLWINDOW);
end;
FAQ

6 komentarzy

Ten kod powyzej jest niepelny :/
calosc powinna wygladac tak:

private
{ Private declarations }
procedure CreateParams(var Params: TCreateParams); override;
public
{ Public declarations }
end;

var
Okno: TOkno;

implementation

{$R *.dfm}

procedure TOkno.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW;
Params.Style := Params.Style or WS_SYSMENU or WS_MINIMIZEBOX;
end;

Wszystko jest w jak najlepszym pożądku

Najpierw nalezy dokonac stosowny wpis w części deklaracyjnej formy:
...
private
procedure CreateParams(var Params: TCreateParams); override;
end;

może wpisaŁEM

(Johny) może wpisz nawę procedurki do public'a

coś mi sie nie kompiluje