QT—QTextEdit控件显示日志

功能:利用QTextEdit开发一个日志显示窗口。没有太多操作,需要实现的是日志自动向上滚动,总体的日志量可以控制在x行(比如300行)以内;其他的应用功能我后面继续添加

 1 #include <QTextBlock>
 2
 3 #include <QTextEdit>
 4
 5 #include <QDebug>
 6
 7 #include <QTextCursor>
 8
 9
10
11     QString text;
12
13     text = "1111111111111111111111111111\n"14
15             "222222222222222222222222222\n"16
17             "33333333333333333333333333333\n"18
19             "4444444444444444444444444444";
20
21     QTextEdit edit;//定义一个QTextEdit。当然如果你想看显示内容,还是需要将这个QTextEdit绑定在一个widget上面show出来的;
22
23     edit.setText(text); //把text设置给QTextEdit,如果这时候用widget,show出来的话,应该就能看到一个类似于记事本的界面上有四行内容;
24
25     QTextBlock ba = edit.document()->firstBlock();//获取第一行的内容,,如果不用这个函数,我真没办法获取到第一行;
26
27     QTextCursor cur = edit.textCursor();  //关键点:QTextEdit要删除,只能clear(),那就全部删除掉了。或者利用光标来进行选择,因为光标里的函数有一个removeSelectedText()
28
29     cur.setPosition(0,QTextCursor::MoveAnchor);
30
31     int length = ba.length();
32
33     qDebug()<<"第一段的长度是:"<<length;
34
35     cur.setPosition(length,QTextCursor::KeepAnchor);//设置selectedText的时候,我感觉应该有很多方式来选择的,我没有一一测试
36
37     //cur.select(QTextCursor::WordUnderCursor);
38
39     qDebug()<<"选择的文字是:"<<cur.selectedText();
40
41     qDebug()<<"删除前:"<<edit.document()->lineCount();
42
43     cur.removeSelectedText();
44
45     edit.setTextCursor(cur);   //关键:必须将这个光标设置回去,否则你的删除操作没生效;
46
47     qDebug()<<"删除后:"<<edit.document()->lineCount();//确认删除是否成功
48
49     QTextBlock ba2 = edit.document()->firstBlock();
50
51     qDebug()<<ba2.text();
52
53     edit.append("\n5555555555555555555");
54
55     QTextBlock ba3 = edit.document()->lastBlock();//此处是为了测试光标位置对添加后续内容的影响。结论是,删除动作不影响后续的追加text。
56
57     qDebug()<<"ba3 = "<<ba3.text();
时间: 2024-08-12 10:53:20

QT—QTextEdit控件显示日志的相关文章

Qt基本控件及三大布局

Qt基本控件及三大布局 来源: http://blog.csdn.net/a2604539133/article/details/73920696 Qt基本模块 一.Qt的三大布局 QHBoxLayout: 水平显示布局,所有在其上面摆放的控件只能水平排列下去: QVBoxLayout:  垂直显示布局,所有在其上面摆放的控件只能垂直排列下去: QGridLayout  格子显示布局,可以按照表格的形式显示布局: 二.Qt的控件 label:标签,可以显示文本信息,只读: pushbutton

QTextEdit控件使用

QTextEdit *mpContentTextEdit = new QTextEdit(this); //设置占位符文本 mpContentTextEdit->setPlaceholderText(tr("Placeholder text")); //设置关联控件,用于QTextEdit控件捕获MouseButtonPress等事件 QWidget *mpContentWidget = mpContentTextEdit->viewport(); //设置事件过滤器 mp

cocos2d-x学习笔记(六)TextBMFont控件显示中文乱码或者无法显示

今天用cocos studio加了一个TextBMFont控件,然后需要动态修改TextBMFont控件显示的字符串,用来显示中文的,结果一直无法修改TextBMFont控件的值,最后原来是写到xml文件的中文字符串没有保存成UTF-8格式. ===================================================================================== 记录一下完整实现步骤 一.制作BMFont字体 1.下载并安装BMFont软件 2.

HighChats图表控件显示精度小数点的方法

相信大家对highchats这个图表控件并不陌生,最近在项目中用到它,但是某些字段需要显示为小数点,顾查找资料文档发现下面两个方式可以实现: 初始化时候添加如下两个参数 tooltip:{??? formatter:function(){??? return''+this.point.name+': '+Math.round(this.percentage)+' %';??? }},plotOptions:{?????? pie:{?????? allowPointSelect:true,???

控件显示问题

创建了一个控件,就是看不见: 1.当前控件没有添加到父控件中 2.当前控件的hidden = YES 3.当前控件的alpha <= 0.01 4.没有设置尺寸(frame.size.bounds.size) 5.位置不对(当前控件显示到窗口以外的区域) 6.背景色是clearColor 7.当前控件被其他可见的控件挡住了 8.当前控件是个显示图片的控件(没有设置图片/图片不存在,比如UIImageView) 9.当前控件是个显示文字的控件(没有设置文字/文字颜色跟后面的背景色一样,比如UILa

Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php

Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php 1. Keyword/subtitle 1 2. 使用dwr3的异常convert处理不能解除,,,按照盗垒能解除了.... 1 3. 使用js 回回调功能处理...还是不能,子能显示个..javaClassName:"java.lang.Throwable",message:"Error"} 2 4. 异常转换器 2 5. 当然如果想要只针对某一个f

针对 jQuery Gridly 控件显示多少列的问题。

针对 jQuery Gridly 控件显示多少列的问题,完全根据 columns 的值来显示. 但是显示columns,并不是给多少值显示几列.到目前还是很模糊的.官方文档没有给出具体的一个解释. $('.gridly').gridly({ base: 60, // px gutter: 20, // px columns: $("#FormColumnCount").val() * 3, callbacks: { reordered: function ($elements) { /

C# 如何定义让PropertyGrid控件显示[...]按钮,并且点击后以下拉框形式显示自定义控件编辑属性值

关于PropertyGrid控件的详细用法请参考文献: 1.C# PropertyGrid控件应用心得 2.C#自定义PropertyGrid属性 首先定义一个要在下拉框显示的控件: using System; using System.Windows.Forms; namespace Simon.WinForms.Examples.PropertyGrid { public class EditorControl : UserControl { public EditorControl() {

QT绘图技术(二)QCustomPlot - 超强超小巧的qt绘图控件

QCustomPlot - 超强超小巧的qt绘图控件 2016-10-22 16:03:25|  分类: QT| 官方网站:http://www.qcustomplot.com/ 1.0下载地址:http://download.csdn.net/detail/czyt1988/5986701 下载LOFTER我的照片书  | QCustomPlot 超强超小巧的qt绘图控件,非常漂亮,非常易用,只需要加入一个qcustomplot.h和qcustomplot.cpp即可使用,远比qwt方便,若只