トップページ ソースコードライブラリ Borland C++ Compiler 5.5
実行時にFormStyleのStayOnTopを切り替える
ウィンドウを最前面に表示する/しないを切り替える方法を紹介しています。
サンプルコード
void __fastcall TMainForm::SetStayOnTop(bool IsTop)
{
    if(IsTop){
        ::SetWindowPos(
                Handle, HWND_TOPMOST, 0, 0, 0, 0, 
                SWP_NOMOVE | SWP_NOSIZE | SWP_NOREDRAW);
    }else{
        ::SetWindowPos(
                Handle, HWND_NOTOPMOST, 0, 0, 0, 0, 
                SWP_NOMOVE | SWP_NOSIZE | SWP_NOREDRAW);
    }
}

概要

FormStyleを実行時に変更すると変な動きをします。これを回避するためにAPIを呼び出してあげます。

やり方は簡単でSetWindowPosの第2引数にHWND_TOPMOSTを指定するかHWND_NOTOPMOSTの違いだけでウインドウを最前面にするかしないかを指定することができます。

その他の引数の詳しいことはリファレンスを参照してください。最前面表示のOn/Offを切り替えるだけならこのままでかまわないはずです。

ナビゲーション
プログラミングは道連れ
ソースコードライブラリ
Borland C++Builder
デバッグ時のみ実行する/しない
タスクアイコンの表示/非表示
ホットキーの登録
バージョン情報の取得
文字列の置換
システムフォルダの取得
JPEGの読み込み
TCppWebBrowser内のHTMLを制御する
JPEG形式で保存
動的にActiveXを作成する(PowerPointの一例)
トップページ ソースコードライブラリ Borland C++ Compiler 5.5