Value Calc ver 2.10 (2014/02/17)
[SelectOrder() 関数について]
USEMULTI オプションがオンの場合、SelectOrder() はコンポーネントを選択した順序を 0 ベースの数値で返します。USEMULTI オプションがオフの場合、SelectOrder() は常に 0 を返します。
VCL には TabOrder プロパティがありますが、FMX には (今のところ) TabOrder がありません。コンポーネントを複数選択した場合の何かしらの連番があれば便利なので SelectOrder() 関数を追加しました。非ビジュアルコンポーネントで TabOrder プロパティが存在しない時にも便利です。選択順序なので VCL / FMX の差異に影響されません。どちらからでも利用可能です。
SelectionOrder() は名前の通り、選択順序を返します。〔Shift〕+ クリック で一つずつ複数選択した場合には、その順番で 0,1,2… となります。マウスドラッグで複数選択した場合にはコントロールの作成順に 0,1,2… となります (なるようです)。
FMX だと、フォームにボタンを 12 個貼り、全選択して Position.X に…
Cos(2 * Pi / 12 * SelectOrder) * 100 + 120
Position.Y に…
Sin(2 * Pi / 12 * SelectOrder) * 100 + 120
と入力すると、以下の画像のようになります。
# 早い話が TabOrder の代わりに使えるぞ、と。
|