Delphi Faq
базы даных
графика и игры
интернет и сеть
компоненты и классы
мультимедиа
ос и железо
программа и интерфейс
рабочий стол
синтаксис
технологии
файловая система
 
 



на главную
Сделать кнопку на TaskBar для каждого окна
У многооконного приложения, как Delphi, обычно только одна кнопка на TaskBar. Если же вам понадобилось, чтобы у каждого окна была своя кнопка, воспользуйтесь функцией SetWindowLong, добавив флаг WS_EX_APPWINDOW.

В модуле первого окна:



uses Unit2, Unit3;

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
ShowWindow(Application.Handle, SW_HIDE);
Form1.Hide;
Form2.Show;
Form3.Show;
end;




В модуле второго окна:



uses Unit3;

{$R *.DFM}

procedure TForm2.FormCreate(Sender: TObject);
begin
SetWindowLong(Handle, GWL_EXSTYLE,
GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_APPWINDOW);
end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if Form3.Visible = false then
Application.Terminate;
end;




В модуле третьего окна:



uses Unit2;

{$R *.DFM}

procedure TForm3.FormCreate(Sender: TObject);
begin
SetWindowLong(Handle, GWL_EXSTYLE,
GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_APPWINDOW);
end;

procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if Form2.Visible = false then
Application.Terminate;
end;


KX-TDA миниатс и атс все версии на сайте Altercomm.ru