これは RuntimeRevolution 1.1.1 のヘルプにある文書を邦訳したものです。この文書の文責はUDIにあり、またUDIはこの文書についての一切の債務を負いません。 間違いがありましたら eudio@chabashira.co.jp までお知らせ下さい。この文書は必要と思われる時に適宜アップデートされます。
Help -> Revolution Documantation -> Development Guide -> Objects & messages -> About... groups and backgrounds
About groups and backgrounds
グループとバックグラウンド
==============
参照:
--------------
About messages and the message path, How to display objects on more than one card, Why isn't a group listed?, Object menu > Group Selected, Object menu > Remove Group, Object menu > Place Group, View menu > Application Overview, backgroundBehavior property, group command, groupIDs property, groupNames property, place command, remove command, selectGroupedControls property
グループは Revolution の最も多才なオブジェクトであり、ラジオボタン群、メニューバー、オブジェクトセットのカード間共有など、多くの便利な機能を提供する。
このトピックでは、グループの作り方と使い方、スクリプトから参照する方法、そして共有しているグループをカードに加えたり取り除いたりする方法を説明する。
このトピックを充分理解するためには、コントロールの作り方と、メッセージパスの働きを修得しておく必要がある。もし 'Getting Started' チュートリアルが済んでいるなら、このトピックを理解するための情報は得られている。
Contents:
What Is a Group?
Groups and Backgrounds
Nested Groups
Selecting and Editing Groups
Adding and Deleting Groups
Groups and the Message Path
What Is a Group?
グループとは?
グループとは、個々のオブジェクトをまとめたオブジェクトである。グループオブジェクトを作るには、グループに入れたいコントロールを選択して、group コマンドを使うか、Object メニューの 'Group Selected' を選択する。
あなたが作ったグループはそれ自体がオブジェクトである。選択、コピー、移動、そしてリサイズなどが可能で、グループ内の全てのオブジェクトはその操作に従う。グループ内のオブジェクトはそれぞれ独立しているが、その所有者はカードではなくグループである。グループにオブジェクトを追加することも出来るし、グループからオブジェクトを削除することも出来る。
グループは自分自身のプロパティとスクリプトを持っている。他のコントロールと同じように、好きな大きさにリサイズ出来、show/hide を切り替えたり、スタックウィンドウの中を移動させることが出来る。また他のコントロールと同じように、カード上の任意の位置のレイヤーに移動することが出来る。
グループは他のコントロールと異なり、複数のカード上に配置することが出来る。グループをカード上に置くには、place コマンドか、Object メニューの 'Place Group' を使う。複数のカードで共有されているグループは各カード上で同じ位置に表示される。あるカード上で共有されているグループを変更すると、その変更は全てのカードに反映される。
Groups and Backgrounds
グループとバックグラウンド
'Group' と 'Background' はどちらもグループを指す用語である。これらの用語はどちらも同じように使うことが出来るが、例外もある。
一般的には、'Group' はカード上のグループを指し、'Background' はスタック上の全グループを指す。 the number of groups という式はカレントカード上にあるグループの数を表す。 the number of backgrounds は、カレントカード上に無いものも含めた、カレントスタック上の全てのグループの数を表す。
グループを番号で参照する場合、'Group' という単語を使うと、グループのカード上のレイヤー番号と解釈される。 'Background' という単語を使った場合は、スタック上のグループの作成番号と解釈される。
例えば、the name of group 1 という式はカレントカードの一番下のレイヤーにあるグループの名前を表すが、the name of background 1 という式は、そのグループがどのカードに置かれているかに関わりなく、一番最初に作られたグループの名前を表す。
しかしオブジェクトを参照する時に 'Background' という単語を使った場合は、それは 'Group' と全く同義語である。
最後にもうひとつ。 'Background' は、あるグループを共有するカード群を参照する時にも使われる。これは 'Navigation' という名前のグループが置かれている3番目のカードに移動するスクリプトである:
go card 3 of background "Navigation"
if the owner of the target is not me then pass messageこれはグループに無いオブジェクトの処理を除外するフィルタである。