编程-我这个有不理解的地方帮我讲讲好吗?

问题描述

我这个有不理解的地方帮我讲讲好吗?
 #include ""mainwindow.h""#include ""ui_mainwindow.h""#include <QTextFrame>#include <QDebug>#include <QLineEdit>#include <QDialog>#include <QPushButton>#include <QVBoxLayout>MainWindow::MainWindow(QWidget *parent) :    QMainWindow(parent)    ui(new Ui::MainWindow){    ui->setupUi(this);    QTextDocument *document=ui->textEdit->document();    QTextFrame *rootFrame=document->rootFrame();    QTextFrameFormat format;    format.setBackground(Qt::blue);    format.setBorderBrush(Qt::red);    format.setBorder(3);    rootFrame->setFrameFormat(format);    QTextFrameFormat frameFormat;    frameFormat.setBackground(Qt::lightGray);    frameFormat.setMargin(20);    frameFormat.setPadding(50);    frameFormat.setBorder(6);    frameFormat.setBorderStyle(QTextFrameFormat::BorderStyle_Dotted);    QTextCursor cursor=ui->textEdit->textCursor();    cursor.insertFrame(frameFormat);    QAction *action_textFrame=new QAction(tr(""框架"")this);    connect(action_textFrameSIGNAL(triggered())thisSLOT(showTextFrame()));    ui->mainToolBar->addAction(action_textFrame);    QAction *action_textBlock=new QAction(tr(""文本块"")this);    connect(action_textBlockSIGNAL(triggered())thisSLOT(showTextBlock()));    ui->mainToolBar->addAction(action_textBlock);    QAction *action_font=new QAction(tr(""字体"")this);    action_font->setCheckable(true);    connect(action_fontSIGNAL(toggled(bool))thisSLOT(setTextFont(bool)));    ui->mainToolBar->addAction(action_font);    QAction *action_textFind=new QAction(tr(""查找"")this);    connect(action_textFindSIGNAL(triggered())thisSLOT(textFind()));    ui->mainToolBar->addAction(action_textFind);}void MainWindow::showTextFrame(){    QTextDocument *document=ui->textEdit->document();    QTextFrame *frame=document->rootFrame();    QTextFrame::iterator it;    for(it=frame->begin();it.atEnd()==0;++it)    {        QTextFrame *childFrame=it.currentFrame();        QTextBlock childBlock=it.currentBlock();        if(childFrame)            qDebug()<<""frame"";        else if(childBlock.isValid())            qDebug()<<""block:""<<childBlock.text();    }}void MainWindow::showTextBlock(){    QTextDocument *document=ui->textEdit->document();    QTextBlock block=document->firstBlock();    qDebug()<<document->blockCount();    for(int i=0;i<document->blockCount();i++)    {        qDebug()        <<tr(""文本块%1文本块首行行号为:%2长度为:%3内容为:"").arg(i).arg(block.firstLineNumber()).arg(block.length())             <<block.text();        block=block.next();    }}void MainWindow::setTextFont(bool checked){    if(checked)    {        QTextCursor cursor=ui->textEdit->textCursor();        QTextBlockFormat blockFormat;        blockFormat.setAlignment(Qt::AlignCenter);        cursor.insertBlock(blockFormat);        QTextCharFormat charFormat;        charFormat.setBackground(Qt::lightGray);        charFormat.setForeground(Qt::blue);        charFormat.setFont(QFont(tr(""宋体"")12QFont::Boldtrue));        charFormat.setFontUnderline(true);        cursor.setCharFormat(charFormat);        cursor.insertText(tr(""测试字体""));    }}void MainWindow::textFind(){    QDialog *dlg=new QDialog(this);    lineEdit=new QLineEdit(dlg);    QPushButton *btn=new QPushButton(dlg);    btn->setText(tr(""查找下一个""));    connect(btnSIGNAL(clicked(bool))thisSLOT(findNext()));    QVBoxLayout *layout=new QVBoxLayout;    layout->addWidget(lineEdit);    layout->addWidget(btn);    dlg->setLayout(layout);    dlg->show();}void MainWindow::findNext(){    QString string=lineEdit->text();    bool isfind=ui->textEdit->find(stringQTextDocument::FindBackward);    if(isfind)    {        qDebug()<<tr(""行号:%1列号:%2"").arg(ui->textEdit->textCursor().blockNumber()).                  arg(ui->textEdit->textCursor().columnNumber());    }}MainWindow::~MainWindow(){    delete ui;}






解决方案

你不理解的地方,建议标志出来、并说明你的理解与问题。否则,别人给你全部注释代码,基本上是不可能的。

解决方案二:
是应用输出的顺序的问题吗

解决方案三:
看不懂,这到底怎么赚积分啊

解决方案四:

        建议先学c++
时间: 2024-09-11 23:58:53

编程-我这个有不理解的地方帮我讲讲好吗?的相关文章

javaweb-读程序时候不理解一个地方。。。求解答

问题描述 读程序时候不理解一个地方...求解答 Cookie cookie=new Cookie("lastTime",System.currentTimeMillis()+""); 后面为什么要加""啊 有什么特殊的含义或者用法吗 解决方案 因为 参数需要两个String类型的 System.currentTimeMills()是Long类型 +""可以转成String类型 解决方案二: 将 System.currentTi

对Js OOP编程 创建对象的一些全面理解_基础知识

面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物. 对象的含义 对象可以是汽车,人,动物,文字,表单或者任何存在的事物等等. 对象有: 属性-------对象的某些特定的性质. 方法-------对象能做的事情. 事件-------能响应发生在对象上的事情. 我们可以通过创建一个人的对象来理解面向对象 人: 两只手,两只脚,一个头,还可以跑动. 手,脚,头,是人的属性,跑动是人的方法. 首先,我们来用最简单的方法创建一个对象 var person = { head

面向切面编程(AOP)的理解

  在传统的编写业务逻辑处理代码时,我们通常会习惯性地做几件事情:日志记录.事务控制及权限控制等,然后才是编写核心的业务逻辑处理代码.当代码编写完成回头再看时,不禁发现,扬扬洒洒上百行代码中,真正用于核心业务逻辑处理才那么几行,如图6-4所示.方法复方法,类复类,就这样子带着无可奈何遗憾地度过了多少个春秋.这倒也罢,倘若到了项目的尾声,突然决定在权限控制上需要进行大的变动时,成千上万个方法又得一一"登门拜访",痛苦"雪上加霜". 如果能把图6-4中众多方法中的所有共

面向切面编程(AOP)的理解_javascript技巧

在传统的编写业务逻辑处理代码时,我们通常会习惯性地做几件事情:日志记录.事务控制及权限控制等,然后才是编写核心的业务逻辑处理代码.当代码编写完成回头再看时,不禁发现,扬扬洒洒上百行代码中,真正用于核心业务逻辑处理才那么几行,如图6-4所示.方法复方法,类复类,就这样子带着无可奈何遗憾地度过了多少个春秋.这倒也罢,倘若到了项目的尾声,突然决定在权限控制上需要进行大的变动时,成千上万个方法又得一一"登门拜访",痛苦"雪上加霜". 如果能把图6-4中众多方法中的所有共有代

《Python高性能编程》——第1章 理解高性能Python 1.1 基本的计算机系统

第1章 理解高性能Python 读完本章之后你将能够回答下列问题 计算机架构有哪些元素? 常见的计算机架构有哪些? 计算机架构在Python中的抽象表达是什么? 实现高性能Python代码的障碍在哪里? 性能问题有哪些种类? 计算机编程可以被认为是以特定的方式进行数据的移动和转换来得到某种结果.然而这些操作有时间上的开销.因此,高性能编程可以被认为是通过降低开销(比如撰写更高效的代码)或改变操作方式(比如寻找一种更合适的算法)来让这些操作的代价最小化. 数据的移动发生在实际的硬件上,我们可以通过

编程-我这代码有不懂的地方,能解释下不?

问题描述 我这代码有不懂的地方,能解释下不? #include<iostream> using namespace std; struct list { int data; struct list *next; }; class Stack { struct list *ptrf,*ptrb; public: Stack() { ptrf=ptrb=NULL; } void push(int x) { struct list *newnode=new struct list; newnode-

《代码大全》学习笔记(2):利用隐喻对编程进行更深刻的理解

2.1 隐喻的重要性       重大发现往往是从类比中产生的.通过把一个你所陌生的事物与你所熟知的事物比较,你会对它有进一步的认识,从而形成你对它的独到的深刻理解,这种隐喻方法被称之为"模型化".        模型的力量在于它能提供生动形象的概念而易被人整个接受. 2.2 如何使用软件隐喻         一个公式是一套完整建立的.进行某一些任务的规则:它的结果是可以预测的.确定的,并不取决于运气.         启发是一种帮助你寻求答案的技术,它的结果往往和运气有关.     

JS编程建议——78:正确理解执行上下文和作用域链

建议78:正确理解执行上下文和作用域链执行上下文(execution context)是ECMAScript规范中用来描述 JavaScript 代码执行的抽象概念.所有的 JavaScript 代码都是在某个执行上下文中运行的.在当前执行上下文中调用 function会进入一个新的执行上下文.该function调用结束后会返回到原来的执行上下文中.如果function在调用过程中抛出异常,并且没有将其捕获,有可能从多个执行上下文中退出.在function调用过程中,也可能调用其他的functi

SessionID不理解的地方

问题描述 SessionID是服务器生成的,用以区分用户的.存放在服务器内存和客户机的Cookie里面.当用户发出请求时,服务器将Cookie里面记录的SessionID和服务器内存中的SessionID进行比对,从而找到这个用户对应的Session.那为什么在同一个浏览器,我用的是chrome,当我以用户A登陆后看到的SessionID值如果是mt2kaazw4vmmbtg0ypkz4hbp,当我不关闭浏览器,退出用户A,再用用户B登陆进去,SessionID的值还是mt2kaazw4vmmb