CellClick イベント
◆機能
ストックイベントの Click とは以下の違いがあります。 Click はコントロール上でマウスの左ボタンが押下され、開放された場合に発生します。たとえば標準的なコマンドボタンを例にとると、コマンドボタン上で左ボタンを押下すると凹状態になり、開放すると凸状態に戻り、そのタイミングでClick が発生します。しかし、凹状態でマウスをドラッグし、コマンドボタン外へマウスポインタを移動すると、外れたときに凸状態に戻り、そこで開放した場合にはClick は発生しません。さらに、開放せずに、ドラッグして再びコマンドボタン上に移動すると、再び凹状態になり、そこで開放すれば凸状態に戻り、Clickが発生します。つまり、同一コントロール上で左ボタンの押下と開放がセットで行われた場合のみ、開放時にClick が発生するということになります。 PerfectGridは全体でひとつのコントロールですから、上記の Clickのメカニズムでは、この押下と開放が異なるセルで行われた場合でも、それがPerfectGrid内であれば、発生してしまうことになります。場合によってはこれでは不都合が生じてしまいます。たとえばセルのスタイル(ColStyleメソッド)がコマンドボタンであり、その押下をキャンセルしたい場合などです。このような場合に、このCellClickを使用します。CellClickは、同一セル上で左ボタンの押下と開放がセットで行われた場合のみ、開放時に発生するからです。 なお、CellClickは固定領域や、ラベル・ピクチャ領域など、セルカーソルが移動しないセルでも発生します。ただし、当該セルが領域2-1-1以外でディセーブル状態の場合には発生しません。領域2-1-1がディセーブル状態でも発生するのは、ディセーブルな行や列でも「選択」は可能で、この領域がマウス操作での選択に使用されるためです。 また、セルのスタイルがチェックボックスかコマンドボタンの場合、通常のチェックボックスやコマンドボタンと同様にスペースキーの押下開放によってもCellClickが発生します。
|