QT文本控件输入换行符“\n“不能被识别

本文讲述了开发者在使用QT进行低功耗蓝牙开发时,遇到textEdit和lineEdit无法正确识别换行符 的问题,通过replace函数将 替换为 解决了这一问题。

低功耗蓝牙项目,需要一块懂省电的板

思澈 SF32LB52 芯片,BLE 协议栈深度优化,上手即开发

最近在做低功耗蓝牙开发,为了方便,自己用QT做了个串口调试助手,在用QT的文本控件如textEdit或lineEdit时,发现输入换行符"\n"不能被识别,经过反复验证,换行符"\n"被识别成了两个字符"“和"n”,打印出来的结果就很明显,如输入"at+link?\n",打印结果是"at+link?\n"。由于是QT默认的设定,只能另寻解决方法了,最后只能用替换的方法解决了。
如下,设计一个pushButto和textEdit,按下pushButton后,运行如下代码:

	QString Sendtext;
    Sendtext=ui->textEdit->toPlainText();
    ui->textEdit->append(Sendtext);
    //该函数会把"\"识别为普通符号而不是转义符,因此"\r","\n"无效,需做如下处理
    Sendtext.replace("\\r","\r");
    Sendtext.replace("\\n","\n");
    ui->textEdit->append(Sendtext);

运行后,textEdit输入"at+link?\n",然后textEdit输出如下图

	at+link?\n
	at+link?
	//换行

问题解决!

低功耗蓝牙项目,需要一块懂省电的板

思澈 SF32LB52 芯片,BLE 协议栈深度优化,上手即开发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值