使用中の場合にタスクバーボタンに表示される単純なVCLフォームアプリケーションがあります。これらのボタンを非表示にしたいので、ボタンが表示されないフォームで何が起こってもかまいません。フォームが表示または非表示になっている場合や、ボタンを非表示にする必要がある場合があります。その方法は?
PSこのような質問が存在することがわかりましたが、私の目的では機能しません。
使用中の場合にタスクバーボタンに表示される単純なVCLフォームアプリケーションがあります。これらのボタンを非表示にしたいので、ボタンが表示されないフォームで何が起こってもかまいません。フォームが表示または非表示になっている場合や、ボタンを非表示にする必要がある場合があります。その方法は?
PSこのような質問が存在することがわかりましたが、私の目的では機能しません。
スプークが答えたことだけでなく、( http://codeverge.com/embarcadero.cppbuilder.ide/builder-c++-xe-and-hiding-taskbar/1073223に感謝)
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Application->MainFormOnTaskBar = false;
DWORD dwExStyle = GetWindowLong(Application->Handle, GWL_EXSTYLE);
dwExStyle &= ~WS_EX_APPWINDOW;
dwExStyle |= WS_EX_TOOLWINDOW;
SetWindowLong(Application->Handle, GWL_EXSTYLE, dwExStyle);
}
void __fastcall TForm1::FormActivate(TObject *Sender)
{
ShowWindow(Application->Handle, SW_HIDE);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::CreateParams(TCreateParams &Params)
{
TForm::CreateParams(Params);
Params.ExStyle &= ~WS_EX_APPWINDOW;
Params.ExStyle |= WS_EX_TOOLWINDOW;
}
次のアプローチを試してください。
ソース: http://delphi.about.com/od/delphitips2008/qt/hide_taskbutton.htm