ダイアログの使い方まとめ
I. 概要
ダイアログは、主に短期間のタスクとユーザーとの簡単なコミュニケーションに使用されるポップアップ ダイアログの一種です。ApplicationWindow や Page と同様に、Dialog はヘッダー、コンテンツ、フッターの 3 つの部分で構成されています。
2. ダイアログ ボックスのタイトルとボタン
ダイアログのタイトルは、スタイル固有のタイトル バーによって表示されます。これは、デフォルトでダイアログのタイトルとして指定されています。
ダイアログの標準ボタンは DialogButtonBox によって管理され、既定ではダイアログ フッターとして指定されます。ダイアログの standardButtons プロパティは、ボタン ボックスの対応するプロパティに転送されます。また、ボタン ボックスのaccepted()およびrejected()シグナルは、ダイアログ内の対応するシグナルに接続されます。このダイアログ ボックスを開くには、open() 関数を使用します。
Button{
x: 270
y: 184
text: "点击";
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
onClicked: {
dialog.open()
}
}
Dialog {
id: dialog
title: "Title"
standardButtons: Dialog.Ok | Dialog.Cancel
onAccepted: console.log("Ok clicked")
onRejected: console.log("Cancel clicked")
}
3、モーダル ダイアログ ボックス
モーダル ダイアログは、ダイアログの下の他のコンテンツへの入力をブロックします。モーダル ダイアログが開いている場合、ユーザーは、同じウィンドウ内の他のコンテンツにアクセスする前に、ダイアログの操作を終了してダイアログを閉じる必要があります。実際、モーダル属性を設定するだけです
Dialog {
id: dialog
modal: true
standardButtons: Dialog.Ok
}
第 4 に、非モーダル ダイアログ ボックス
モードレス ダイアログは、ダイアログを囲む他のコンテンツから独立して動作するダイアログです。モードレス ダイアログを開くと、ユーザーは同じウィンドウ内でダイアログやその他のコンテンツを操作できます。
Dialog {
id: dialog
modal: false
standardButtons: Dialog.Ok
}
5、standardButtons 属性
このプロパティには、ダイアログで使用される標準ボタンの組み合わせが含まれています。
Dialog {
id: dialog
title: "Title"
standardButtons: Dialog.Ok | Dialog.Cancel
onAccepted: console.log("Ok clicked")
onRejected: console.log("Cancel clicked")
}
ボタンは、ユーザーのシステム プラットフォームに基づいて適切な順序で配置されます。
記号 | 意味 |
---|---|
Dialog.Ok | AcceptRoleで定義された「OK」ボタン。 |
ダイアログを開く | AcceptRoleで定義された「開く」ボタン。 |
Dialog.Save | AcceptRole で定義された「保存」ボタン。 |
Dialog.Cancel | RejectRole で定義された「キャンセル」ボタン。 |
Dialog.閉じる | RejectRole で定義された「閉じる」ボタン。 |
Dialog.Discard | プラットフォームに応じて、DestructiveRole によって定義される「破棄」または「保存しない」ボタン。 |
Dialog.Apply | ApplyRole で定義された「適用」ボタン。 |
ダイアログ.リセット | ResetRole で定義された「リセット」ボタン。 |
Dialog.RestoreDefaults | ResetRole で定義された [デフォルトに戻す] ボタンを使用します。 |
ダイアログ.ヘルプ | HelpRole で定義された「ヘルプ」ボタン。 |
Dialog.SaveAll | AcceptRoleで定義された「すべて保存」ボタン。 |
Dialog.はい | YesRole で定義された「はい」ボタン。 |
Dialog.YesToAll | YesRole で定義された「すべてはい」ボタン。 |
Dialog.いいえ | NoRole で定義された「いいえ」ボタン。 |
Dialog.NoToAll | NoRole で定義された「すべてを受け入れない」ボタン。 |
対話、中絶 | RejectRole で定義された「中止」ボタン。 |
ダイアログ.再試行 | AcceptRole で定義された「再試行」ボタン。 |
Dialog.Ignore | AcceptRole で定義された「無視」ボタン。 |
Dialog.NoButton | ボタンが無効です。 |
この異なる役割は、異なる役割にも対応します。つまり、さまざまなボタンがクリックされると、さまざまな信号が発せられ、さまざまな信号に応じてさまざまな処理関数を作成できます。
役割 | 信号 |
---|---|
AcceptRole、YesRole | 受け入れられた() |
ApplyRole | 適用() |
DiscardRole | 破棄された() |
ヘルプロール | helpRequested() |
RejectRole、NoRole | 拒否された() |
役割のリセット | リセット() |