找回密码
 立即注册
收起左侧

如何在再次调用settext时清除append添加的内容

4
回复
141
查看
[复制链接]
累计签到:4 天
连续签到:3 天
来源: 2021-4-30 09:38:19 显示全部楼层 |阅读模式
3Qter豆
我在编写QpushButton的槽函数时,写了ui->label->settext(str.append("aaa");
但是在测试程序时,每次按下pushbutton就会在之前的text后面再次重复加上append里面的内容,导致aaa越来越多。我试过在代码前加上clear,但是问题照常,我想到可能是append的问题而不是clear,问一下,如何清楚settext里面append的内容,防止不断重复?

最佳答案

查看完整内容

append具有修改原字符串的功能,你的str如果是成员变量或全局变量就会一直追加append内容,修改成局部变量就好了
回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2021-4-30 09:38:20 显示全部楼层
append具有修改原字符串的功能,你的str如果是成员变量或全局变量就会一直追加append内容,修改成局部变量就好了
回复

使用道具 举报

累计签到:4 天
连续签到:3 天
2021-4-30 10:47:50 显示全部楼层
lxc 发表于 2021-4-30 10:00
append具有修改原字符串的功能,你的str如果是成员变量或全局变量就会一直追加append内容,修改成局部变量 ...

谢谢!解决了
回复

使用道具 举报

累计签到:4 天
连续签到:3 天
2021-5-8 10:13:59 显示全部楼层
lxc 发表于 2021-4-30 09:38
append具有修改原字符串的功能,你的str如果是成员变量或全局变量就会一直追加append内容,修改成局部变量 ...

等一下,还是有问题啊,万一有好几个槽函数要调用这个字符串呢?
回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2021-5-8 17:34:23 显示全部楼层
E-comon 发表于 2021-5-8 10:13
等一下,还是有问题啊,万一有好几个槽函数要调用这个字符串呢?

有点不知道怎么回答你了,字符串修改有很多方法,append只是其中一种,而且应用场景千百万,你只要保证使用时,是你想要的形式就好了,如果你是为了解决特定的问题,你把代码贴出来,我给你看看,但这不是根本办法,以后场景多着呢,还是得灵活应用才行
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册