本身搞android的,工作需要用qt,有几个地方不是很了解,请教大牛
1:emit是干什么用的,一个类中signals:
void addWarn(quint32 warn);然后在一个方法中emit addWarn(warn);
2: qRegisterMetaType<HkTranData>("HkTranData");
qRegisterMetaType<EquCfg>("EquCfg");
qRegisterMetaType<SaveData>("SaveData");这个HkTranData,EquCfg,SaveData都是一个类,括号里面用“”包围起来起什么作用,整个这条语句有什么作用?
3:怎么连接数据库?在windows下面要自己编译连接数据库的驱动吗?别人编译好的可以用嘛?能否提供详细步骤,我知道qt默认下面只有一个连sqllite的驱动
4:怎么写多线程程序,是否要引入额外的库和包?
5:用vs2008编译的lib和dll,在qt中应该怎么引用?我现在在网上需要用到一个c++库,但是只有源码, 而且要正确使用这个库,还需要用到其它的库,所以需要一起编译之后能够在qt中用这些类,不知道这样描述大家懂不?就像java中要用一个类,把jar包加进classpath然后import就可以用了
希望各位帮助一下小弟,急,十万火急,谢了,只有这么多分了,十分感谢!!
[解决办法]
5. 用vs2008编译的lib和dll,在qt中应该怎么引用?我现在在网上需要用到一个c++库,但是只有源码, 而且要正确使用这个库,还需要用到其它的库,所以需要一起编译之后能够在qt中用这些类,不知道这样描述大家懂不?就像java中要用一个类,把jar包加进classpath然后import就可以用了
需要在qt工程pro文件中添加如下:
LIBS += -Llib \
-laalib\
-lssl
注解:lib是存放dll的目录,aalib和ssl是dll的名称
[解决办法]
原来有人和我一样,本身搞android工作需要还要学qt~
没人回答第三个,关于自己添加非默认的数据库驱动,也不麻烦的,可以参考学习一下:
http://blog.csdn.net/yangt1100/article/details/5409556
[解决办法]
1:emit是干什么用的,一个类中signals:
void addWarn(quint32 warn);然后在一个方法中emit addWarn(warn);
signal和slot是QT的核心机制 emit signal就是用来产生一个被signals声明过的函数
2: qRegisterMetaType<HkTranData>("HkTranData");
qRegisterMetaType<EquCfg>("EquCfg");
qRegisterMetaType<SaveData>("SaveData");这个HkTranData,EquCfg,SaveData都是一个类,括号里面用“”包围起来起什么作用,整个这条语句有什么作用?
注册一个metaType类型,要不QT connect时 里面的参数必须是原始类型或者是QT的类型,对于自己定义的类型需要用qRegisterMetaType进行注册 可以通过编译
3:怎么连接数据库?在windows下面要自己编译连接数据库的驱动吗?别人编译好的可以用嘛?能否提供详细步骤,我知道qt默认下面只有一个连sqllite的驱动
你使用的是什么版的QT的?我用的windows版的支持多种数据库,包括MS的ODBC如ACCESS这样的,也支持oracle
4:怎么写多线程程序,是否要引入额外的库和包?
有QThread等类和如QRunable这样的框架调用,非常简单
5:用vs2008编译的lib和dll,在qt中应该怎么引用?我现在在网上需要用到一个c++库,但是只有源码, 而且要正确使用这个库,还需要用到其它的库,所以需要一起编译之后能够在qt中用这些类,不知道这样描述大家懂不?就像java中要用一个类,把jar包加进classpath然后import就可以用了
正常用,我现在就经常用QT和其他的第三方的库混编,如ACE什么的,是OK的,制定好路径和dll 没发现问题
希望各位帮助一下小弟,急,十万火急,谢了,只有这么多分了,十分感谢!!