QT学习笔记(一)
2016-12-28 11:20
190 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/iteye_17474/article/details/82677673
1)显示中文:
在main.cpp中加入:
#include<QTextCodec>
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
2)如何将QLabel 和QLindEdit在代码中建立伙伴关系:
第一种直接在构造函数中(利用setBuddy函数):
ui->label3->setBuddy(ui->LineEdit);//因为Label3与LineEdit都属于ui中的空间
3)如何用代码添加菜单(在对应.CPP文件的构造函数中添加)
QMenu *editMenu = ui->menuBar->addMenu(tr("编辑(&E)"));//添加编辑菜单
QAction *action_open = editMenu->addAction(QIcon("D:/For Code/5-1/myMainWindow/images/open.png"),tr("打开文件(&O)"));//添加打开菜单
action_open ->setShortcut(QKeySequence("Ctrl+O"));//设置快捷键
ui->mainToolBar->addAction(action_open);//在工具栏中添加动作
3)富文本处理:
// QT 第5章节---富文本处理-框架的实际应用
QTextDocument *document = ui->textEdit->document();//获取文档对象
QTextFrame *rootFrame = document->rootFrame();//获取根框架
QTextFrameFormat format;//创建框架格式
format.setBorderBrush(Qt::red);//边界颜色
format.setBorder(3);//边界宽度
rootFrame->setFrameFormat(format);//框架使用格式
//使用光标类对象,在根框架中再添加一个子框架
QTextFrameFormat frameFormat;
frameFormat.setBackground(Qt::lightGray);//设定背景颜色
frameFormat.setMargin(10);//设定边距
frameFormat.setPadding(5);//设定填衬
frameFormat.setBorder(2);
frameFormat.setBorderStyle(QTextFrameFormat::BorderStyle_DotDash);//边框样式
QTextCursor cursor = ui->textEdit->textCursor();
cursor.insertFrame(frameFormat);文本处理
注:BorderStyle有 :
1)BorderStyle_Dashed;
2)BorderStyle_Dot Dash;
3)BrderStyle_Dot Dot Dash;
4)BorderStyle_Dotted;
5)BorderStyle_Double;
6)BorderStyle_Groove;
4)文本块
文本块的根式主要是由QTextBlockFormat类来处理,主要涉及对其方式、文本块四周边白、缩进等内容。而文本块中的文本内容的格式,比如字体大小、加粗、下划线等内容,则是由QTextCharFormat类来设置
5)connect()函数
将信号发送者sender对象中的信号signal与接受者receiver中的member槽函数联系起来。当指定信号signal时必须使用宏SIGNAL(),当指定槽函数时必须使用宏SLOT(),如果发送者与连接者属于同一个对象时,那么在connect调用中接受者参数可以忽略。
例如:connect(action_font, SIGNAL(toggled(bool)), this, SLOT(setTextFont(bool)));
具体如下:
QAction *action_font = new QAction(tr("字体"), this);
action_font -> setCheckable(true);//设置动作可以被选中
connect(action_font, SIGNAL(toggled(bool)), this, SLOT(setTextFont(bool)));
ui->mainToolBar->addAction(action_font);
在main.cpp中加入:
#include<QTextCodec>
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
2)如何将QLabel 和QLindEdit在代码中建立伙伴关系:
第一种直接在构造函数中(利用setBuddy函数):
ui->label3->setBuddy(ui->LineEdit);//因为Label3与LineEdit都属于ui中的空间
3)如何用代码添加菜单(在对应.CPP文件的构造函数中添加)
QMenu *editMenu = ui->menuBar->addMenu(tr("编辑(&E)"));//添加编辑菜单
QAction *action_open = editMenu->addAction(QIcon("D:/For Code/5-1/myMainWindow/images/open.png"),tr("打开文件(&O)"));//添加打开菜单
action_open ->setShortcut(QKeySequence("Ctrl+O"));//设置快捷键
ui->mainToolBar->addAction(action_open);//在工具栏中添加动作
3)富文本处理:
// QT 第5章节---富文本处理-框架的实际应用
QTextDocument *document = ui->textEdit->document();//获取文档对象
QTextFrame *rootFrame = document->rootFrame();//获取根框架
QTextFrameFormat format;//创建框架格式
format.setBorderBrush(Qt::red);//边界颜色
format.setBorder(3);//边界宽度
rootFrame->setFrameFormat(format);//框架使用格式
//使用光标类对象,在根框架中再添加一个子框架
QTextFrameFormat frameFormat;
frameFormat.setBackground(Qt::lightGray);//设定背景颜色
frameFormat.setMargin(10);//设定边距
frameFormat.setPadding(5);//设定填衬
frameFormat.setBorder(2);
frameFormat.setBorderStyle(QTextFrameFormat::BorderStyle_DotDash);//边框样式
QTextCursor cursor = ui->textEdit->textCursor();
cursor.insertFrame(frameFormat);文本处理
注:BorderStyle有 :
1)BorderStyle_Dashed;
2)BorderStyle_Dot Dash;
3)BrderStyle_Dot Dot Dash;
4)BorderStyle_Dotted;
5)BorderStyle_Double;
6)BorderStyle_Groove;
4)文本块
文本块的根式主要是由QTextBlockFormat类来处理,主要涉及对其方式、文本块四周边白、缩进等内容。而文本块中的文本内容的格式,比如字体大小、加粗、下划线等内容,则是由QTextCharFormat类来设置
5)connect()函数
将信号发送者sender对象中的信号signal与接受者receiver中的member槽函数联系起来。当指定信号signal时必须使用宏SIGNAL(),当指定槽函数时必须使用宏SLOT(),如果发送者与连接者属于同一个对象时,那么在connect调用中接受者参数可以忽略。
例如:connect(action_font, SIGNAL(toggled(bool)), this, SLOT(setTextFont(bool)));
具体如下:
QAction *action_font = new QAction(tr("字体"), this);
action_font -> setCheckable(true);//设置动作可以被选中
connect(action_font, SIGNAL(toggled(bool)), this, SLOT(setTextFont(bool)));
ui->mainToolBar->addAction(action_font);
相关文章推荐
- Qt学习笔记(四) 双缓冲
- qt学习笔记(八)之深入QSqlQuery
- QT学习笔记(八):嵌入式Linux下的QT程序的运行及相应的参数
- qt学习笔记(三) QString char int之间的转换
- Qt学习笔记(十一)网络
- Qt学习笔记2014.7.16.16:14——使用QLabel显示图像
- qt学习笔记(三) QString char int之间的转换
- Qt学习笔记002 2015/6/16
- QT学习笔记
- Qt学习笔记3---QMainWindow使用
- Qt学习笔记-了解信号与槽-自定义信号-自定义槽
- Qt学习笔记5-修改exe名称
- qt学习笔记:Qt标准对话框之QInputDialog
- QT学习笔记
- Qt学习笔记(一)
- Qt学习笔记(qt源文件,命名规范,快捷键)
- Qt学习笔记(五) 布局管理
- qt学习笔记(九)之数据库_初窥用户接口层
- QT学习笔记(九):创建QT的共享库
- qt学习笔记(二) QString