イネマルのプログラミング備忘録

趣味プログラマのメモ

2023-01-01から1年間の記事一覧

【WinAPI】C++ Windows11 環境でウィンドウの角丸を制御する

ウィンドウの角丸を制御する Windows11 から、デフォルトでウィンドウの四つ角が丸められます。 これを、Windows10 のような丸められていない状態などに変更するには、DwmSetWindowAttribute を使用します。 ※ Windows11 以降で利用可能 な方法です。それ以…

【WinAPI】C++ ウィンドウの背景色を取得する方法

メモ ウィンドウクラスの登録時に指定する、背景色ブラシからRGBカラーを取り出す。 実装 auto hb = reinterpret_cast<HBRUSH>(::GetClassLong(m_hWnd, GCL_HBRBACKGROUND)); LOGBRUSH br{}; if (::GetObject(hb, sizeof(br), &br)) { BYTE r = GetRValue(br.lbColor</hbrush>…

【WinAPI】C++ タスクバーのアイコンを強調表示する(FlashWindowEx)

メモ ウィンドウを最小化している時など、ウィンドウを表示していない時に、 ユーザーに処理の完了を通知するにはタスクバーアイコンを強調表示します。 これは、FlashWindowEx を使用して実現します。(Windows10 では、オレンジ色に光ります。) 実装 // …

【WinAPI】C++ ウィンドウの最小サイズと最大サイズを取得する(WM_GETMINMAXINFO)

メモ ウィンドウメッセージ「WM_GETMINMAXINFO」を、目的のウィンドウに送信して取得する。 ウィンドウのサイズ制御は、アプリ毎に実装が異なるので、 ウィンドウ側がメッセージを処理していない場合には、取得できないことに注意する。 実装 int APIENTRY w…