2017-01-06 10 views
3

qmlのダイアログの赤い「x」クローズボタンの信号を傍受するにはどうすればよいですか?QMLのダイアログ赤赤色の「x」クローズボタン信号

Dialog 
{ 
    id : dialog1 
    visible : false 
    title : "dialog1" 

    onRejected: 
    { 
     console.log("Red button x clicked signal") // Not working 
    } 
    Button 
    { 
     id: exitButton 
     text : "Exit" 
     onClicked : 
     { 
      console.log("exit button clicked") // this works 
      robotCalibrationDialog.visible = false 
     } 
    } 

qmlダイアログのすべての信号を試しましたが、x赤色のボタンでは動作しないようです。

+0

あなたは 'onClosing'シグナルの使用を検討しましたか? https://doc-snapshots.qt.io/qt5-5.7/qml-qtquick-window-window.html#closing-signal –

+0

qmlのダイアログのシグナルではありません:http://doc.qt.io/qt -5/qml-qtquick-dialogs-dialog.html#accepted-signal – asdfasdf

+0

「onVisibleChanged」シグナルはどうですか? – DuKes0mE

答えて

0

私はUbuntuでQt 5.9.1を使用していて、QML MessageDialogウィンドウでクリックされた「x」/閉じるボタンを検出しようとしています。ドキュメンテーションは実際にonRejectedが発射すべきイベントであることを示していますが、そうではありません!だから私はonVisibleChangedを使用し、それが見えないかどうかをチェックする。それは動作します。

関連する問題