首页IT科技qt qtl(Qt4小技巧——QTextEdit自动滚屏)

qt qtl(Qt4小技巧——QTextEdit自动滚屏)

时间2025-09-16 17:21:31分类IT科技浏览8870
导读:Qt4小技巧——QTextEdit自动滚屏...

Qt4小技巧——QTextEdit自动滚屏

原文链接:Qt4小技巧——QTextEdit自动滚屏

今天偶然需要QTextEdit显示出调试的log                  ,仔细翻了下文档                            ,才发现没有设置自动滚屏的方法                  。

总不能每次出来新的log         ,还要手动翻到最下面吧                  ,于是干脆自己手写了一个                            ,可以利用 QTextCursor来定位内容的最后位置         ,当每次内容更新信号发送之后         ,移动即可                           。

简单的例子如下:

TextEdit.h

#ifndef TEXTEDIT_H

#define TEXTEDIT_H

#include <QTextEdit>

class QTimer;

class TextEdit : public QTextEdit

{

Q_OBJECT

public:

TextEdit(QWidget *parent = 0);

~TextEdit();

private:

QTimer *timer;

public slots:

void addText();

void autoScroll();

};

TextEdit.cpp

#include <QTextCursor>

#include <QTimer>

#include “TextEdit.h                  ”

TextEdit::TextEdit(QWidget *parent)

: QTextEdit(parent)

{

timer = new QTimer(this);

connect(timer, SIGNAL(timeout()), this, SLOT(addText()));

connect(this, SIGNAL(textChanged()), this, SLOT(autoScroll()));

timer-&gt;start(1000);

}

TextEdit::~TextEdit()

{

}

void TextEdit::addText()

{

QString text = this-&gt;toPlainText();

text.append(“Test\n                            ”);

this-&gt;setText(text);

}

void TextEdit::autoScroll()

{

QTextCursor cursor = this-&gt;textCursor();

cursor.movePosition(QTextCursor::End);

this-&gt;setTextCursor(cursor);

}

main.cpp

#include <QtGui/QApplication>

#include “TextEdit.h         ”

int main(int argc, char *argv[])

{

QApplication a(argc, argv);

TextEdit w;

w.show();

return a.exec();

}

声明:本站所有文章                            ,如无特殊说明或标注                  ,均为本站原创发布          。任何个人或组织         ,在未征得本站同意时                            ,禁止复制                  、盗用                           、采集          、发布本站内容到任何网站         、书籍等各类媒体平台         。如若本站内容侵犯了原著者的合法权益                  ,可联系我们进行处理                           。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
window10锁屏壁纸怎么保存(win10怎么保存锁屏壁纸) 假期适合做什么工作(假期干点什么能赚钱-面对疫情,宅在家里做点啥)