我希望我的應用程序最小化到系統托盤,並且不會顯示在任務欄上。我跟着從this和this答案的建議,並在項目源改變了MainFormOnTaskBar
屬性:在Delphi中隱藏應用程序從任務欄不起作用
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.MainFormOnTaskBar := False;
Application.Run;
end.
接下來,我想這:
procedure TForm1.Button1Click(Sender: TObject);
begin
Self.Hide;
WindowState := wsMinimized;
TrayIcon1.Visible := True;
end;
與此變體:
procedure TForm1.ApplicationEvents1Minimize(Sender: TObject);
begin
Self.Hide;
WindowState := wsMinimized;
TrayIcon1.Visible := True;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Application.Minimize;
end;
但而托盤圖標正確顯示應用程序仍顯示在任務欄中。我究竟做錯了什麼?
這是您在任務欄上看到的應用程序窗口。把它藏起來。 –
大概ShowWindow會爲你做這項工作。我不認爲TApplication暴露了窗口句柄之外的任何東西。 –