掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
複数のペインからなるプログラムで、フォーカスの有無により各ペインのタイトル部の色を変えるには (ID:47523)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Harry様 ご回答、誠にありがとうございます。 先ほど、コードを以下のように修正し、実行してみました。 procedure TForm1.ColorChange(Sender: TObject); begin Panel1.Color := clInactiveCaption; Panel2.Color := clInactiveCaption; // ↓削除 // if not IsWindowEnabled(Self.Handle) then exit; if Memo1.Focused then Panel1.Color := clActiveCaption; if Memo2.Focused then Panel2.Color := clActiveCaption; end; その結果、モーダルウィンドウでは、期待通りに色が変わりましたが、 モーダルでないダイアログの場合(ShowMessageの代わりにFindDialog1.Execute)、 アクティブペインの色は、clInactiveCaptionに切り替わりませんでした。 アクティブなウィンドウを判定するロジックを組み込むとうまくいきそう です。各ペインを持つウィンドウがアクティブかどうかを判断するロジック の実装を考え、また報告させていただきます。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.