(一) 以前在使用回调函数的数据都是定义一个全局变量,把回调函数的返回结果给这个全局变量,然后在定时去刷新这个全局变量,这样虽然可以实现功能,但是方法不是很好 。 (二) 今天使用类的静态函数作为回调函数,具体方式如下, static void callback(int device, int msg, int param1, void *param2);//回调函数 } void CardDataDispose::data(QString cardID, QString cardAnswer)
(1) 在头文件中定义类
class CardDataDispose : public QObject
{
Q_OBJECT
public:
void data(QString cardID, QString cardAnswer);
};
(2) 在引用回调类的源文件中设置回调函数。
TB_SetCallbackAddr(CardDataDispose::callback);
(3) CardDataDispose回调函数的原型
void CardDataDispose::callback(int device, int msg, int param1, void *param2)
{
CardDataDispose *a;
a->data(“1” , “2”);
{
引用回调函数的类
UBBoardController *b;
b->receiveCardData(cardID, cardAnswer);
}
(三) 通过以上把回调函数封装成一个类,在收到数据后直接调用receiveCardData()函数就可以传输数据,不需要开启定时器刷新了。
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算