功能:改变textedit里面的文字颜色.
界面如下:
主要的文件是:
(1)建立一个基本的工程,包含mainwindow。
(2)移动一个input控件qtextedit到窗口上,并转到槽。
(3)修改槽函数,使之满足相关的功能实现要求。
主要修改添加光标改变为触发信号,其次更改输入框的字体颜色,颜色只有三种,分别是黑红蓝。
以下为主要代码:
#include "mainwindow.h"
#include "./ui_mainwindow.h" // 其余的工程文件不用修改
int flag = 0;
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_textEdit_cursorPositionChanged()
{
QTextCursor tc = ui->textEdit->textCursor(); // 光标定义
qDebug()<<"该位置的的横坐标为:"<<tc.columnNumber()<<Qt::endl;
qDebug()<<"该位置的的纵坐标为:"<<tc.blockNumber()<<Qt::endl;
if(tc.blockNumber()%2==0&&tc.columnNumber()%3==0){
QString str = ui->textEdit->toPlainText(); // 获取输入的文字
ui->textEdit->setTextColor(Qt::red); // 修改字体颜色,红色
flag = 0;
}
else{
QString str = ui->textEdit->toPlainText();
ui->textEdit->setTextColor(Qt::blue); // 修改字体颜色,蓝色
flag = 1;
}
}
效果和代码已经贴出,如有疑问,请您留言。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)