• 11382阅读
  • 9回复

[提问]c++ 传参数给 qml,只能通过qvariant? [复制链接]

上一主题 下一主题
离线btptboy
 

只看楼主 倒序阅读 楼主  发表于: 2013-11-15
RT,c++的lineedit,使用textchanged(qstring)信号,给qml参数,我现在的做法是将textchanged信号连接到一个槽,将qstring转成qvariant,然后再发送给qml,这样很麻烦,很多信号都要这样转,难道参数只能是qvariant吗?
我思故我在
离线cavendish

只看该作者 1楼 发表于: 2013-11-15
信号和槽应该可以直接用的呀

或者你是说QtQuick里的TextInput没有textchanged()这个信号?
离线btptboy

只看该作者 2楼 发表于: 2013-11-15
回 1楼(cavendish) 的帖子
我說的是c++的lineedit控件的textchanged(qstring)信號, textchanged信號的參數是qstring,而要將這個qstring傳給qml中,好像需要把qstring轉換成qvariant,這就需要中間的另外一個槽來進行轉換,所以覺得比較麻煩,不知是否有什麼不用中間轉換的方法
我思故我在
在线toby520

只看该作者 3楼 发表于: 2013-11-17
这涉及C++与QML通讯,其实我最多使用过数组,至于如何传输对象,我失败了,返回C++类型,基本可以对应js里面类型,不管是强弱类型,楼主,目前没有好的办法,实在觉得麻烦,可以在C++与QML之间定义一个接口,用来连接C++与QML之间的桥梁
QtQML多多指教开发社区 http://qtclub.heilqt.com
将QtCoding进行到底
关注移动互联网,关注金融
开发跨平台客户端,服务于金融行业
专业定制界面
群号:312125701   373955953(qml控件定做)
离线lq2219502
只看该作者 4楼 发表于: 2013-11-26
用Connections试试?
离线lovexin109

只看该作者 5楼 发表于: 2015-04-02
回 toby520 的帖子
toby520:这涉及C++与QML通讯,其实我最多使用过数组,至于如何传输对象,我失败了,返回C++类型,基本可以对应js里面类型,不管是强弱类型,楼主,目前没有好的办法,实在觉得麻烦,可以在C++与QML之间定义一个接口,用来连接C++与QML之间的桥梁 (2013-11-17 20:44) 

版主数组和指针是怎么传到QML中去呀??
在线toby520

只看该作者 6楼 发表于: 2015-04-02
回 lovexin109 的帖子
lovexin109:版主数组和指针是怎么传到QML中去呀?? (2015-04-02 10:37) 

传指针还不如直接在C++注册一个对象,这样就可以在qml当中使用该注册的对象,操作任何数据和方法,看下QML在C++的扩展章节吧
QtQML多多指教开发社区 http://qtclub.heilqt.com
将QtCoding进行到底
关注移动互联网,关注金融
开发跨平台客户端,服务于金融行业
专业定制界面
群号:312125701   373955953(qml控件定做)
离线qyvlik

只看该作者 7楼 发表于: 2015-04-20
回 btptboy 的帖子
btptboy:我說的是c++的lineedit控件的textchanged(qstring)信號, textchanged信號的參數是qstring,而要將這個qstring傳給qml中,好像需要把qstring轉換成qvariant,這就需要中間的另外一個槽來進行轉換,所以覺得比較麻煩,不知是否有什麼不用中間轉換的方法 (2013-11-15 21:43) 

ps:QString 就是qml中的string类型,可以直接赋值
ubiboot
离线aslistener

只看该作者 8楼 发表于: 2015-04-23
查看 qml  basic type, 如果要给 qml 传参, 基本类型可以自由传递, 如果非基本类型, 需要注册
离线iamcwz

只看该作者 9楼 发表于: 2015-04-26
可以关注CSDN  for版主的博客有介绍
快速回复
限100 字节
 
上一个 下一个