QML日历:以编程方式调用onClicked处理程序



我的QML应用程序正在显示一个Calendar元素。

当所选日期更改(单击)时,我需要更新其他元素(图像)。

我有这样的东西:

Calendar  {
    id: calCalendar
    onClicked: {
        // update other QML element
    }
}

当用户用鼠标点击日历时,它工作得很好:其他元素(图像)会正确更新。

我的问题是初始化:当我的应用程序启动时,日历默认显示当前日期,我想以编程方式调用onClicked处理程序,以确保图像是最新的。

我不知道该怎么做。

如果您想在QML组件完成初始化时执行某些操作,可以使用Component.onCompleted :插槽。

Calendar  {
    id: calCalendar
    onClicked: {
        // update other QML element
    }
    Component.onCompleted: {
         // Do stuff for initialization.
         // you could do this here : calCalendar.Clicked()
         // if you want to use the same code for initialization and for user input handling later on.
    }
}

要点如下:onXXX : {声明了一个插槽来处理信号XXX。这里的信号是Clicked。正如您所说,您可以通过编程方式触发信号,只需像函数一样调用它。您需要知道参数的有效重载(如果有的话)。

相关内容

  • 没有找到相关文章

最新更新