CuteQt Blog » Blog Archive » 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();

}

Qt4小技巧——QTextEdit自动滚屏相关推荐

  1. Linux系列:Ubuntu/fedora实用小技巧—禁止自动锁屏、设置免密码自动登录、免密码执行sudo操作...

    首先声明:该文虽以Ubuntu 13.04为例,同样适用于Fedora 17(已测试),但在较低版本的Ubuntu下可能有所差异,具体看后面的注意事项. 技巧目录: 解决Ubuntu下每隔几分钟自动锁 ...

  2. linux锁屏自动登录,Linux系列:Ubuntu/fedora实用小技巧—禁止自动锁屏、设置免密码自动登录、免密码执行sudo操作...

    首先声明:该文虽以Ubuntu 13.04为例,同样适用于Fedora 17(已测试),但在较低版本的Ubuntu下可能有所差异,具体看后面的注意事项. 技巧目录: 解决Ubuntu下每隔几分钟自动锁 ...

  3. 大屏html自动滚动,Automatic Scrolling Tabs - 网页自动滚屏

    Automatic Scrolling Tabs插件背景简介 最近有网友在网上提问求一个脱离鼠标仍可网页自动向下滚动,然后鼠标去操作其他东西的插件,最好能设置滚动速度的.之前我们会推荐一些鼠标手势插件 ...

  4. echart 时间滚动_基于 ECharts 封装甘特图并实现自动滚屏

    项目中需要用到甘特图组件,之前的图表一直基于 EChart 开发,但 EChart 本身没有甘特图组件,需要自行封装 经过一番鏖战,终于完成了... 我在工程中参考 v-chart 封装了一套图表组件 ...

  5. VC编辑框(EDIT)的自动换行、自动滚屏 、到指定行数自动清空

    From: http://getyoureyes.blog.163.com/blog/static/101716622201083081914305/ 经过多次测试,总结出VC编辑框(EDIT)的自动 ...

  6. 帆软报表调用python脚本_帆软报表(finereport)实现自动滚屏效果

    例如Demo:IOS平台年度数据报表. 展示内容丰富,一个页面中存在多个图表.内容,超出了浏览器窗口的大小导致内容展示不全. 为了能够预览这个报表的全部内容,可以使用JS滚屏效果来实现. 操作步骤: ...

  7. jQuery实现 自动滚屏操作

    实现自动滚屏思路: 1.滚屏即:文本的往上移动一段距离: 2.那么我们使文本每过一段时间就往上移动一段固定距离,就可实现滚屏: 3.直到文本底部出现在浏览器窗口中,专业点就是 文本移动的距离 + 浏览 ...

  8. Html:小技巧:自动提交表单的实现方法

    Html:小技巧:自动提交表单的实现方法 方法一: <html> <head> <title>Untitled Document</title> (1) ...

  9. Android拖动实现(一个流畅的拖动排序DragSortGridView,自动滚屏)

    https://github.com/huxq17/HandyGridView 先上效果 流畅效果超越了网易新闻和UC浏览器的栏目收藏.gif图和实际效果有差距 1.拖拽可以移动item,并且其他it ...

最新文章

  1. jQuery中DOM操作
  2. idea创建包怎么让包分层_开一家早餐店卖生煎包怎么样
  3. 勒索软件赎金该不该交?
  4. 画活动图教程_二次元人物头发怎么画?画好头发有什么技巧?
  5. android开发(49) android 使用 CollapsingToolbarLayout ,可折叠的顶部导航栏
  6. gcc的警告提示信息
  7. spring boot配置dubbo(XML)
  8. 强烈推荐《价值:我对投资的思考》
  9. 【keras/Tensorflow/pytorch】Conv2D和Conv2DTranspose详解
  10. Python通过SSH下载远程服务器文件
  11. 我的第一篇随笔-------吹起启程之风
  12. 小米5.0以上设备最完美激活xposed框架的流程
  13. Apollo学习(二)appollo安装与部署
  14. 财务报告及会计基础知识
  15. kmeans以及kmeans++聚类生成anchors
  16. 数据分析的基本思想是什么
  17. PHP:简单数学勾股定理
  18. LeetCode之打印零与奇偶数golang与java实现
  19. 李敖北大清华和复旦演讲
  20. 鞋类产品推广引流落地页html源码

热门文章

  1. android studio vfs,Android Studio:尝试呈现XML布局的InvalidVirtualFileAccessException
  2. php装箱,php兑现装箱算法
  3. mysql主从表结构差异_mysqldiff对比主从表结构是否一致
  4. 调试跟踪利器---strace
  5. TVM:源码编译安装
  6. vue底部选择器_vue实现动态显示与隐藏底部导航的方法分析
  7. dubbo全局异常处理_基于spring aop的dubbo异常统一处理
  8. c是过程化语言吗数据库,A.数据库语言B.过程化语言C.宿主语言D.数据库管理系统...
  9. 如何把照片正面变成反面_各国签证照片要求大全 (含模板)
  10. html 复选框name值,HTML(5)表单元素以及对各个表单元素的name、value属性的理解