[Qt Quick 踩坑] QML端函数参数未定义
Posted Smalldy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Qt Quick 踩坑] QML端函数参数未定义相关的知识,希望对你有一定的参考价值。
在QML中链接C++信号本是一件简单的事情,但是今天遇到了一个十分无语的事情,c++端发出了一个信号,信号的参数是一个时间戳,类型为std::in64_t
,这个信号链接到QML端时,打印出来的数值永远是undefine
。
排查良久终于找到解决方案,将int64_t
换成qint64
即可。
int64_t 的真正定义是 long int,而 qint64则是 long long,c++类型到js类型的转换工作是由Qt完成的,我猜测可能是它没有针对long int做转换。遗憾的是我并未在官方文档中找到相关描述,如果有大佬发现依据,还请不吝赐教。
以上是关于[Qt Quick 踩坑] QML端函数参数未定义的主要内容,如果未能解决你的问题,请参考以下文章
qt quick QML 应用程序的自定义样式页面(如 HTML 和 CSS)
27.Qt Quick QML-StateTransition