opamp_sando's blog

クソザコが割りと適当なことを書くためにある備忘録です。あとたまに普通の日記も書きます

QtでQWidget(Window)を常にトップに表示させておく方法

QWidget always on top on windows.
調べてもよく出て来なかったので、メモ。

単純にQWidgetまたはその継承クラスをすべてのWindowsの手前 つまりは一番先頭に表示させておきたい場合は以下のようにする。

/*
windowはQWidgetまたはその継承クラスのポインタ変数。
*/
window->setWindowFlags(Qt::WindowStaysOnTopHint);//このように書く。もちろんクラスのコンストラクタなどに書いてもいい。 
window->show();

こうして表示されたwindowは必ず先頭に表示されてくれる。
setWindowFlagsクラス関数がpublicな関数なのでクラスの内部、外部問わずに呼び出すことができる。この例では外部から呼び出している。

久々のQt記事ですな。

Firefox ブラウザ無料ダウンロード