「QMLのコントロール - RowとRowLayout」の版間の差分

📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

1行目: 1行目:
== 概要 ==
== 概要 ==
<code>Row</code>および<code>RowLayout</code>は、見やすいレイアウトを表示するために用意されている。<br>
<code>Row</code>および<code>RowLayout</code>は、見やすいレイアウトを表示するために用意されている。<br>
<br><br>
== Row ==
==== 専用プロパティ ====
* layoutDirection
*: 値 : enumeration型 (既定値 : Qt.LeftToRight)
*: このプロパティは、行のlayoutDirectionを設定する。
*: <br>
*: Qt.LeftToRightは、アイテムが左から右に向かってレイアウトされる。行の幅が明示的に設定されている場合、左アンカーは行の左に残る。
*: Qt.RightToLeftは、アイテムが右から左に向かってレイアウトされる。行の幅が明示的に設定されている場合、右アンカーは行の右に残る。
*: <br>
*: Grid.layoutDirectionプロパティやFlow.layoutDirectionプロパティも参照すること。
*: <br>
* effectiveLayoutDirection
*: 値 : enumeration型
*: 行の効果的なレイアウト方向を設定する。
*: ロケールレイアウトに対して<code>LayoutMirroring.enabled</code>プロパティを使用する場合、行の位置の視覚的なレイアウト方向がミラーリングされる。
*: ただし、<code>layoutDirection</code>プロパティは変更されない。
*: <br>
*: <code>Row.layoutDirection</code>プロパティおよび<code>LayoutMirroring</code>プロパティも参照すること。
*: <br>
* spacing
*: 値 : 実数 (既定値 : 0)
*: 隣り合うアイテムの間を空けるピクセル数を設定する。
*: Grid.spacingプロパティも参照すること。
*: <br>
* padding
* topPadding
* bottomPadding
* leftPadding
* rightPadding
*: 値 : real型
*: コンテンツの周りのパディングを設定する。
*: このプロパティは、Qt 5.6で導入された。
*: <br>
* add
*: 値 : Transition型
*: <code>Row</code>内のアイテムに対して実行されるトランジションを設定する。
*: アイテムがポジショナーの場合、以下のアイテムが該当する。
*:* ポジショナーが作成された後に、ポジショナーの子として作成または再配置されたアイテム
*:* 子アイテムの<code>visible</code>プロパティの値が<code>false</code>から<code>true</code>に変更されて、可視状態になったアイテム
*: <br>
*: トランジションは、<code>ViewTransition</code>を使用して、追加されるアイテムの詳細にアクセスできる。
*: これらのトランジションの使用に関する詳細と例については、<code>ViewTransition</code>のドキュメントを参照すること。
*: <br>
*: <u>※注意</u>
*: <u><code>add</code>プロパティは、作成時に既にポジショナーの一部となっているアイテムには適用されない。</u>
*: <u>この場合は、代わりに<code>populate</code>プロパティが適用される。</u>
*: <br>
*: <code>populate</code>や<code>ViewTransition</code>も参照すること。
*: <br>
* move
*: 値 : Transition型
*: <code>Row</code>内で移動したアイテムに対して実行するトランジションを設定する。
*: <br>
*: アイテムがポジショナーの場合、以下のアイテムが該当する。
*:* ポジショナー内の他のアイテムの追加、削除、再配置により、位置がずれた子アイテムの移動
*:* ポジショナー内の他のアイテムのサイズ変更により再配置された子アイテム
*: <br>
*: トランジションでは、<code>ViewTransition</code>を使用して、移動されるアイテムの詳細にアクセスすることができる。
*: <br>
*: <u>※注意</u>
*: <u>ただし、<code>move</code>プロパティでは、<code>ViewTransition.targetIndexes</code>プロパティと<code>ViewTransition.targetItems</code>プロパティは、</u>
*: <u>ポジショナーに他のアイテムが追加されて、<code>move</code>プロパティがトリガーされた場合にのみ設定される。</u>
*: <u>それ以外の場合は、これらのリストは空になる。</u>
*: <br>
*: これらのトランジションの詳細や使用例については、<code>ViewTransition</code>のドキュメントを参照すること。
*: また、<code>add</code>プロパティ、<code>populate</code>プロパティも参照すること。
*: <br>
* populate
*: 値 : Transition型
*: ポジショナーの作成時に、このポジショナーの一部であるアイテムに対して実行されるトランジションを設定する。
*: <code>populate</code>プロパティは、ポジショナーが最初に作成された時に実行される。
*: <br>
*: <code>populate</code>プロパティは、<code>ViewTransition</code>を使用して追加されるアイテムの詳細情報にアクセスできる。
*: <br>
*: これらのトランジションの詳細や使用例については、<code>ViewTransition</code>のドキュメントを参照すること。
*: また、<code>add</code>プロパティも参照すること。
<br>
==== シグナル ====
* positioningComplete()
*: このシグナルは、位置決めが完了した時に発行する。
*: <br>
*: <u>※注意</u>
*: <u>対応するハンドラは <code>onPositioningComplete()</code>である。</u>
*: <br>
*: このシグナルは、Qt 5.9で導入された。
<br>
==== メソッド ====
* forceLayout()
*: <code>Row</code>は、通常、フレームごとに1度だけ子プロセスを配置する。
*: <br>
*: スクリプト内では、下層の子アイテムが変更されても、<code>Row</code>がまだ更新されていない可能性がある。
*: しかし、<code>forceLayout</code>メソッドは、<code>Row</code>が子アイテムの変更に即座に対応することを強制する。
*: <br>
*: <u>※注意</u>
*: <u>一般的に、<code>forceLayout</code>メソッドは、コンポーネントが完了してから呼び出すべきである。</u>
*: <br>
*: このメソッドは、Qt 5.9で導入された。
<br><br>
<br><br>