|
1Qter豆
不太擅长pc编程,刚接触qt几天,现在老师给个任务,想做一个Qt程序通过串口读取单片机发送的数据,学习了yafeilinux的教程http://hi.baidu.com/zhu8caizi/item/2a9a4da4a2de533a030a4de1。但是在第一部分就卡住了,希望各位大大帮帮忙,
我用的是Qt creator5.0.2和win7
我直接copy了网上的代码,运行时出现了
错误:C2039: “toAscii”: 不是“QString”的成员
我按网友建议,将widget.cpp中
void Widget::on_pushButton_clicked() //发送数据
{
myCom->write(ui->lineEdit->text().toAscii());
}
和win_qextserialport.cpp中
Win_Handle=CreateFileA(port.toAscii(), GENERIC_READ|GENERIC_WRITE,
FILE_SHARE_READ|FILE_SHARE_WRITE,
NULL,OPEN_EXISTING,dwFlagsAndAttributes, NULL);
出现的toAscii(),换成了toLatin1(),就能够编译通过了,但是只是出现了窗口,没有实现串口通信
请问为什么toAscii()不好用,换成toLatin1(),就能编译通过了呢?另外程序不能用还有可能是什么原因呢?
看大半天资料了,但是感觉知识都还没理解,现在非常发愁,希望各位前辈多指教
|
最佳答案
查看完整内容
Qt 5中已经将toAscii()函数作废了,这个可以查看Qt帮助文档,里面推荐使用toLatin1()。
可以使用论坛的QCom的代码测试!
|