• 13153阅读
  • 12回复

[提问]QTextEdit.append 问题 [复制链接]

上一主题 下一主题
离线quser
 
只看楼主 倒序阅读 楼主  发表于: 2011-12-09
ui.teLog->append("111");
ui.teLog->append("222");

teLog是一个QTextEdit 的指针.
这两段代码会在控件上输出
111
222

怎么能够输出
111222  求教...
离线cthawdf

只看该作者 1楼 发表于: 2011-12-09
你可以重新实现append()实现你的功能 或者
    ui->textEdit->append("222");
       QString str=ui->textEdit->toPlainText();
       ui->textEdit->clear();
       ui->textEdit->append(str+"111");
离线quser
只看该作者 2楼 发表于: 2011-12-09
回 1楼(cthawdf) 的帖子
谢谢 你提供的方法.
我打算用这个控件来输出 来自QProcess的输出流.  并且原封不动的输出在QTextEdit上,QProcess的输出流分多次发给QTextEdit, 而用QTextEdit.append后 就会自动的在每一次后面加了一个换行 这样很不爽啊  ,  就是不明白 QTextEdit.append 为什么要自动加 换行, 在用户使用时自动加不行么...
离线roywillow

只看该作者 3楼 发表于: 2011-12-09
void QTextEdit::append ( const QString & text ) [slot]

Appends a new paragraph with text to the end of the text edit.

没办法,人家是添加一个paragraph……

或者考虑将cursor移动到末尾然后insert?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线quser
只看该作者 4楼 发表于: 2011-12-09
回 3楼(roywillow) 的帖子
多谢你的提示,  问题解决了, 确实是我用错函数了,  使用QTextEdit控件 就会使用append插入QString了  忘记了还有其他方法,  这个问题通过使用 ui.teLog->insertPlainText("111") 解决了 这次没有换行了  
离线roywillow

只看该作者 5楼 发表于: 2011-12-09
回 4楼(quser) 的帖子
不过如果光标的位置被人为移动了,那效果会比较诡异。
感觉还是先处理一下移动光标会更完美吧
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线quser
只看该作者 6楼 发表于: 2011-12-09
回 5楼(roywillow) 的帖子
恩 是的 append 就不用注意这个问题.    楼上能不能提供一些具体的办法和相关的函数 谢谢
离线roywillow

只看该作者 7楼 发表于: 2011-12-09
回 6楼(quser) 的帖子
应该是需要处理cursor(),很早以前处理过,但是没啥印象了,看看文档试试。
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线quser
只看该作者 8楼 发表于: 2011-12-09
回 7楼(roywillow) 的帖子
谢了 我看看资料去
离线libo_rose
只看该作者 9楼 发表于: 2011-12-27
回 8楼(quser) 的帖子
我最近也在做这个类似东西。
用这个吗:
    ui->loginfo->moveCursor(QTextCursor::End,QTextCursor::MoveAnchor);
        ui->loginfo->textCursor().insertText(tempString);

另外:好像我不能只能调用insertPlainText(),很奇怪的说。
离线libo_rose
只看该作者 10楼 发表于: 2011-12-27
回 9楼(libo_rose) 的帖子
不好意思,可以直接调用的。 ,看错了。
ui->loginfo->insertPlainText(tempString).
离线淳于半邪

只看该作者 11楼 发表于: 2011-12-27
学习了
离线淳于半邪

只看该作者 12楼 发表于: 2011-12-27
其实取QTextEdit的toPlainText()在.append()也是可以的
快速回复
限100 字节
 
上一个 下一个