当前位置: 首页 > news >正文

行政单位门户网站建设方案惠州公众号开发公司

行政单位门户网站建设方案,惠州公众号开发公司,网页设计模板html代码模板,友情链接的四个技巧文章目录Text Edit1. 代码示例2. 核心属性3. 核心信号ComboBox1. 代码示例2. 核心属性3. 核心方法4. 核心信号Text Edit QTextEdit表示多行输入框,也是一个富文本,markdown编辑器,并且能在内容超出编辑框范围时自动提供滚动条 QPlainTextEd…

文章目录

  • Text Edit
    • 1. 代码示例
    • 2. 核心属性
    • 3. 核心信号
  • ComboBox
    • 1. 代码示例
    • 2. 核心属性
    • 3. 核心方法
    • 4. 核心信号

Text Edit

QTextEdit表示多行输入框,也是一个富文本,markdown编辑器,并且能在内容超出编辑框范围时自动提供滚动条

QPlainTextEdit只能表示纯文本(Plain Text),QTextEdit不仅能表示纯文本,还可以表示htmlmarkdown

1. 代码示例

编辑widget.ui文件,创建一个labelText Edit控件,右键Text Edit控件,转到槽,选择textChanged信号去定义槽函数

在这里插入图片描述

// widget.cpp
void Widget::on_textEdit_textChanged()
{// 获取到多行输入框中的内容,将该内容设置到label上const QString& text = ui->textEdit->toPlainText();ui->label->setText(text);
}

在这里插入图片描述

2. 核心属性

属性名说明
markdown输入框内持有的内容。支持 Markdown 格式,能够自动将 Markdown 文本渲染成 HTML
html输入框内持有的内容。可以支持大部分 HTML 标签,包括 imgtable
placeHolderText输入框为空时提示的内容
readOnly是否是只读的
undoRedoEnable是否开启撤销/重做(undo/redo)功能
按下 Ctrl + z 触发 undo
按下 Ctrl + y 触发 redo
autoFormating开启自动格式化
tabstopWidth按下缩进占多少空间
overwriteMode是否开启覆盖写模式
acceptRichText是否接收富文本内容
verticalScrollBarPolicy垂直方向滚动条的出现策略:
Qt::ScrollBarAsNeeded:根据内容自动决定是否需要滚动条(默认值)
Qt::ScrollBarAlwaysOff:总是关闭滚动条
Qt::ScrollBarAlwaysOn:总是显示滚动条
horizontalScrollBarPolicy水平方向滚动条的出现策略:
Qt::ScrollBarAsNeeded:根据内容自动决定是否需要滚动条(默认值)
Qt::ScrollBarAlwaysOff:总是关闭滚动条
Qt::ScrollBarAlwaysOn:总是显示滚动条

3. 核心信号

信号名说明
textChanged()文本内容改变时触发
selectionChanged()选中范围改变时触发
cursorPositionChanged()光标移动时触发
undoAvailable(bool)可以进行 undo 操作时触发
redoAvailable(bool)可以进行 redo 操作时触发
copyAvailable(bool)文本被选中或取消选中时触发

演示QTextEdit的这几个信号,textChanged信号

在这里插入图片描述

selectionChanged信号,这里按住键盘上的shift键 + 左右方向键,可以逐个选中内容(多行内容,也可以按上下方向键进行选中)

在这里插入图片描述

cursorPositionChanged()

在这里插入图片描述

剩余三个信号:undo, redo, copy + Available,哪个是true按下组合键就有效,比如说undoAvailable: fasle,按下ctrl + z就无法撤销

在这里插入图片描述

void Widget::on_textEdit_textChanged()
{qDebug() << "textChanged: " << ui->textEdit->toPlainText();
}void Widget::on_textEdit_selectionChanged()
{QTextCursor cursor = ui->textEdit->textCursor();qDebug() << "selectionChanged: " << cursor.selectedText();
}void Widget::on_textEdit_cursorPositionChanged()
{QTextCursor cursor = ui->textEdit->textCursor();qDebug() << "cursorPositionChanged: " << cursor.position();
}void Widget::on_textEdit_redoAvailable(bool b)
{qDebug() << "redoAvailabel: " << b;
}void Widget::on_textEdit_undoAvailable(bool b)
{qDebug() << "undoAvailable: " << b;
}void Widget::on_textEdit_copyAvailable(bool b)
{qDebug() << "copyAvailable: " << b;
}

ComboBox

QComboBox表示一个下拉框

在这里插入图片描述

1. 代码示例

使用下拉框模拟麦当劳点餐。首先在界面上创建三个下拉框,三个label标签和一个提交按钮

在这里插入图片描述

接下来往下拉框中添加文本内容,有两种方式,先来看第一种代码方式,编辑widget.cpp

#include "widget.h"
#include "ui_widget.h"
#include<QDebug>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->comboBox->addItem("麦辣鸡腿堡");ui->comboBox->addItem("巨无霸");ui->comboBox->addItem("双层牛堡");ui->comboBox_2->addItem("薯条");ui->comboBox_2->addItem("麦乐鸡块");ui->comboBox_2->addItem("麦乐鸡翅");ui->comboBox_3->addItem("百事可乐");ui->comboBox_3->addItem("雪碧");
}Widget::~Widget()
{delete ui;
}void Widget::on_pushButton_clicked()
{// 当用户选中完成后,点击提交按钮,打印出用户的选择qDebug() << ui->comboBox->currentText() << ", "<< ui->comboBox_2->currentText() << ", "<< ui->comboBox_3->currentText();
}

在这里插入图片描述

往下拉框添加文本内容,第二种方式,右键下拉框,编辑项目,直接在界面上添加。与上面代码的效果是相同的

在这里插入图片描述

但是在实际应用中,下拉框里面的内容很多时候并不是代码中写死的,而是通过文件或网络加载数据得到的(比如选课操作)

从文件中读取下拉框文本内容的实现方法如下:

还是先来最简单的操作,编辑widget.ui,在界面上创建一个label和下拉框控件

在这里插入图片描述

在本地新建一个名称为data(任意取)的文本文件,要能找到该文件的路径,后面写代码读取文件要用,后续从文件中读取文本内容时,路径后面要跟上文件名(包括后缀),将\改为/

在这里插入图片描述

在编辑widget.cpp源文件前,需要补充文件读写相关的知识。C语言使用fopen函数进行操作,而C++则提供了fstream类来实现这一功能

fstream类可分为ifstream(输入流类)和ofstream(输出流类)。关于文件输入(input)和输出(output)的区分:输入指从文件读取数据到程序,输出则是将程序数据写入文件

在这里插入图片描述

ui->comboBox->addItem(),这个函数要求的参数类型是QString,并不是std::string,虽然都是字符串,但它们是不同的类型

此处就需要进行手动转换,QString::fromStdString(line),就可以将std::string转换成QString

QString s; s.toStdString();可以将QString转换成std::string

#include "widget.h"
#include "ui_widget.h"
#include<QDebug>
#include<fstream>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);// 需要读取文件内容,把文件中的每一行读取出来,作为一个ComboBox选项std::ifstream file("D:/Qt proc_position/ComboBox_2/data.txt"); // 将"/"改成"\"if (!file.is_open()){qDebug() << "文件打开失败";exit(-1);}// getline函数按行来读取文本内容std::string line;while (std::getline(file, line)){// 取到的每一行内容,设置到下拉框中ui->comboBox->addItem(QString::fromStdString(line));}file.close();// 记得关闭文件
}Widget::~Widget()
{delete ui;
}

在这里插入图片描述

2. 核心属性

属性名说明
currentText当前选中的文本。
currentIndex当前选中的条目索引(从0开始)。
若无选中项,值为-1
editable是否允许用户修改文本。
设为true时,行为接近QLineEdit,可设置验证器validator
iconSize下拉框图标(小三角)的尺寸(像素)。
maxCount允许的最大条目数量。

3. 核心方法

方法名说明
addItem(const QString &)添加一个条目到列表末尾。
currentIndex()获取当前选中的条目索引(从0开始)。
若无选中项,返回-1
currentText()获取当前选中的条目文本。

4. 核心信号

信号名说明
activated(int)当用户选择了一个选项时发出,参数为选项索引。
activated(const QString &text)当用户点开下拉框并鼠标划过某个选项时发出,此时尚未确认选择,参数为选项文本。
currentIndexChanged(int)当前选项改变时发出,参数为新选项索引。
currentIndexChanged(const QString &text)当前选项改变时发出,参数为新选项文本。
用户或程序操作都会触发。
editTextChanged(const QString &text)当编辑框中的文本改变时发出(仅editable=true时有效)。
http://www.dtcms.com/a/466893.html

相关文章:

  • 有网络网站打不开自建网站需要哪些技术
  • 建设工程材料网站江西省宜春市建设局网站
  • 网站seo优化徐州百度网络网站的中英文翻译是怎么做的
  • 【LeetCode】61. 旋转链表
  • 整站seo优化哪家好电商设计网站培训
  • 【GD32】启动过程-程序计数器(PC)
  • 茶艺实训室:为学习者打造专业茶艺实操平台
  • 机械设计网站推荐贵州建设监理网站培训通知栏
  • 常州网站制作策划手机制作网站主页软件
  • 淘宝天猫优惠券网站怎么做工作啦
  • H3C 实现ACL 访问控制
  • 【北京迅为】iTOP-4412精英版使用手册-第三十七章 Hello_Driver_Module
  • 1 建设好自媒体门户网站网站备案要几天
  • GESP C++等级认证三级13-操作string2-2
  • 富连网网站开发数字营销成功案例
  • 我的网站 dedecms网站开发模式分为
  • 【附代码】Jupyter 多进程调用 seaborn 并保留格式
  • 正规手机网站建设平台之梦一个系统做多个网站
  • 服务器数据恢复—Raid5多盘掉线,存储如何“起死回生”?
  • 郑州网站推广价vue.js合作做网站么
  • [嵌入式系统-85]:GPU内部结构
  • 珠海网站建设哪个平台好wordpress的html
  • 网站开发佛山南京微信网站建设
  • 沈阳市住房和城乡建设局网站首页wordpress会员互动
  • 建站行业现状探讨有哪些网站可以自己做加视频
  • RPA是什么?企业如何借助有赞平台实现订单与会员自动化
  • cpp03:小项目Da
  • wordpress 商品站网站建设 猴王网络
  • 整站seo优化一般多少钱仿it资讯类网站源码
  • 如何建设一个静态网站宝塔怎么做网站的301跳转