Qt 笔记:文件打印与光标定位

本文介绍了QPlainTextEdit如何通过QTextDocument存储和显示文本数据,包括设置文本属性、获取文本参数和执行标准操作如打印。详细阐述了实现打印功能的步骤,并提到了光标定位,使用QTextCursor获取光标位置信息,强调了数据与界面的分离设计。
摘要由CSDN通过智能技术生成

QPlainTextEdit内部的文档结构

-QPlainTextEdit通过QTextDocument 对象存储文本数据

-QPlainTextEdit本身值负责界面形态的显示

QTextDocument是表示文本以及文本属性的数据类

-设置文本的属性:排版,字体,标题,等

-获取文本参数:行数,文本宽度,文本信息,等

-实现标准操作:撤销,重做,查找,打印,等

打印功能的实现步骤

-连接QAction打印对象的信号到槽函数

-在槽函数中定义QPrintDialog对象

-根据用户选择获取QPrinter对象

-通过QTextDocument对象进行打印

光标定位

void MainWindow::onChanged()
{
    int pos = mainEditor.textCursor().position();
    QString text = mainEditor.toPlainText();
    int col = 0;
    int ln = 0;
    int flag = -1;

    for(int i=0; i<pos; i++)
    {
        if( text[i] == '\n' )
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值