TcustomControl に基づいて独自のグラフィック コンポーネントを作成しました。
コントロールは、最初にテキスト情報が描画される境界領域を描画し、次にグラフィックスが描画されるコントロールの全幅と高さから数パーセントの長方形のクリップ領域を設定します。
クリップ領域は、描画されたグラフィックスが境界領域に侵入してテキスト情報を破損しないように定義されます。
ペイント プロセスの最後に、クリップ領域は次を使用して削除されます。
selectcliprgn(handle,0);
DeleteObject(HClip);
これはすべて機能しますが、問題は、コンテキスト メニューをコントロール (マウスの右ボタンを押したときに選択) に割り当てると、カーソルがクリップされた領域内にある場合にのみメニューが表示されることです。境界領域を右クリックすると、代わりにコンポーネントの親コントロールのコンテキストがメニューに表示されます。
クリップ領域が表示されるコンテキストメニューに影響を与える理由と、それを停止する方法はありますか?