オブジェクトの移動
ShiftMode
プロパティの smAlways がどのように働くかは既に見てきました。その次のシフト モードの smWhenOverlapped(重なる場合はシフト)を見てみましょう。このモードでは、オブジェクトの移動は、上のオブジェクトが伸びてきて下のオブジェクトに重なる場合に生じます。2 つのシナリオを挙げます。
上の 3 つのオブジェクトは
Stretch
が有効になっており、下の 3 つのオブジェクトはShiftMode
が smAlways に設定されています。下のオブジェクトは、その上にある引き伸ばされたオブジェクト用のスペースを作るために十分なだけしか移動しません。上の 3 つのオブジェクトは
Stretch
が有効になっており、下の 3 つのオブジェクトはShiftMode
が smWhenOverlapped に設定されています。下のオブジェクトは、引き伸ばされたオブジェクト用のスペースを作るため、また、デザイン上の 2 つのオブジェクト間の距離を保つために移動します。
これにより、複雑なレポートの作成が可能になります。特に、1 つのオブジェクトが、その上にある他のいくつかのオブジェクトと同時に重なることがあるようなレポートです。
次の例では、上のオブジェクトはすべて引き伸ばし可能なテキストを含んでおり、下のオブジェクトはすべて smWhenOverlapped モードになっています。下のオブジェクトは常に、上のオブジェクト内のテキストの長さに関係なく、上のオブジェクトの近くに表示されます。