パレットの変更への応答
コンポーネントにおけるグラフィックの利用:インデックス への移動
VCL コントロール が GetPalette をオーバーライドしてパレットを指定した場合,Delphi は自動的に,Windows からのパレットメッセージに対して応答します。パレットメッセージを処理するメソッドは PaletteChanged です。
PaletteChanged は,コントロールのパレットを前景と背景のどちらで実現するかを決定します。Windows によるパレットの実現では,前景パレットを最前面のウィンドウが使用し,背景パレットはほかのウィンドウが使用します。しかし,Delphi はそのうえに,コントロールのパレットを 1 つのウィンドウ内でタブ順に実現します。タブ順の先頭にないコントロールに前景パレットを使用させる場合にのみ,デフォルトの動作をオーバーライドします。