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

郑州做网站排名如何快速推广自己的品牌

郑州做网站排名,如何快速推广自己的品牌,多城市网站建设,asp.net旅游网站开发文档目录 1.QLineEdit 单行输入框 例:输入个人信息,通过按钮提交 例:为输入框设置验证器,检查输入的电话 例:验证两次输入的密码是否一致 例:是否显示密码按钮,toggled信号。 2.QTextEdit多行输入框 、QPl…

目录

1.QLineEdit 单行输入框

例:输入个人信息,通过按钮提交

例:为输入框设置验证器,检查输入的电话

例:验证两次输入的密码是否一致

例:是否显示密码按钮,toggled信号。

2.QTextEdit多行输入框 、QPlainTextEdit纯文本输入框

例:textChanged()信号,获取输入框文本textEdit.toPlainText()

例:selectionChanged信号,获取光标选中的文本

例:cursorPositionChanged()信号,获取光标位置

例:undoAvailable(bool)和redoAvailable(bool)信号

例:copyAvailable(bool b)信号


1.QLineEdit 单行输入框

功能:单行输入框、可以输入一段文本,但不能换行。

属性:

text输入框文本
inputMask输入内容格式约束,对输入内容进行简单校验。
maxLength文本最大长度
frame是否添加边框
echoMode

显示方式

QLineEdit::Normal:默认值,输入什么显示什么

QLineEdit::Password:输入字符被隐藏

替代显示*或=

QLineEdit::NoEcho:输入不显示任何字符

cursorPosition光标所在位置
alignment文字对齐方式
dragEnabled是否允许被拖拽
readOnly是否时只读的(不允许修改文本)
placeHolderText当输入框的输入内容为空时,显示的提示信息
clearButtonEnabled是否会显示“清除按钮”,点击清除输入框输入的所有内容。

信号:
 

cursorPositionChanged(int old, int new)鼠标位置发生改变时发出信号,old为原位置、new为新位置。
editingFinished()按下返回或回车,或行编辑失去焦点时,发出次信号。
returnPressed()

按下返回或回车时发出信号,

如果设置了验证器,必须验证通过才能发出信号。

selectionChanged()

当选中的文本改变时,发出该信号。

textChanged(const QString &text)

当文本内容改变时,发出信号。

text是新文本。

当通过代码方式修改文本,也能触发该信号。

textEdited(const QString &text)

当文本内容改变时,发出信号。

text是新文本。

当通过代码方式修改文本,不能触发该信号。

只能由使用者修改输入框内容时,才会触发。

例:输入个人信息,通过按钮提交

    //InputMask,设置输入文本的固定格式,0表示数字ui->lineEdit_phone->setInputMask("000-0000-0000");
#include "widget.h"
#include "ui_widget.h"
#include<QDebug>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->lineEdit_name->setPlaceholderText("请输入姓名");ui->lineEdit_name->setClearButtonEnabled(true);ui->lineEdit_password->setPlaceholderText("请输入密码");ui->lineEdit_password->setEchoMode(QLineEdit::Password);ui->lineEdit_password->setClearButtonEnabled(true);ui->lineEdit_phone->setPlaceholderText("请输入电话");ui->lineEdit_phone->setClearButtonEnabled(true);//InputMask,设置输入文本的固定格式,0表示数字ui->lineEdit_phone->setInputMask("000-0000-0000");
}Widget::~Widget()
{delete ui;
}void Widget::on_pushButton_clicked()
{//获取性别按钮的选中状态QString gender=ui->radioButton_male->isChecked()?"男":"女";//获取用户输入的信息qDebug()<<"姓名:"<<ui->lineEdit_name->text()<<"密码:"<<ui->lineEdit_password->text()<<"性别:"<<gender<<"电话:"<<ui->lineEdit_phone->text();
}

例:为输入框设置验证器,检查输入的电话

inputMask只能对输入内容跟进行简单的校验

通过正则表达式,可以实现更复杂的字符串匹配校验。

正则表达式(Regular Expression,简称 Regex)是一种用于匹配和处理字符串的模式。它可以通过一个特定的规则来定义字符的集合,帮助你查找、替换、提取或验证文本数据。

通过验证器,验证一个字符串是否符合规则

  • 定义正则表达式对象
 QRegExp regExp("^1\\d{10}$");//正则表达式对象//^1:表示以1开//\d{10}:\d表示数字,加\\为了防止c++识别为转义字符//{10}:表示前面的内容重复出现10次,就表示必须出现10个数字//$表示结尾
  •   创建一个验证器对象QRegExpValidator(regExp),设置到控件
    ui->lineEdit->setValidator(new QRegExpValidator(regExp));//只是注册一个验证器
  • 使用验证器 validator()->validate(content,pos)

参数1:需要检查的字符串

需注意textEdited信号触发,槽函数传递的参数是const的,不能直接传入validate(),需拷贝到临时对象。

参数2:int&

输入输出型参数,返回字符串从哪个位置开始不匹配

返回值:符合匹配规则时返回QValidator::Acceptable

    QString content=arg1;int pos=0;//验证通过,解除按钮的禁用状态if(ui->lineEdit->validator()->validate(content,pos)==QValidator::Acceptable){//验证通过ui->pushButton->setEnabled(true);}else{ui->pushButton->setEnabled(false);}

例题代码:通过是否匹配,来决定是否解除button按钮的禁用状态。

1.QRegExp regExp("^1\\d{10}$");//正则表达式对象2.QLineEdit*-> setValidator(new QRegExpValidator(regExp));//创建验证器,并传入lineEdit控件3.使用输入框内容改变时会触发的信号
textEdited(const QString &text)/textChanged(const QString &text)4.在槽函数中,使用验证器验证字符串,判断是否符合规则if(ui->lineEdit->validator()->validate(content,pos)==QValidator::Acceptable)
#include "widget.h"
#include "ui_widget.h"
#include<QRegExpValidator>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//给单行输入框设置验证器,基于正则表达式实现QRegExp regExp("^1\\d{10}$");//正则表达式对象//^1:表示以1开//\d{10}:\d表示数字,加\\为了防止c++识别为转义字符//{10}:表示前面的内容重复出现10次,就表示必须出现10个数字//&表示结尾//创建一个验证器对象,传入lineedit控件ui->lineEdit->setValidator(new QRegExpValidator(regExp));//只是注册一个验证器}Widget::~Widget()
{delete ui;
}void Widget::on_pushButton_clicked()
{
}void Widget::on_lineEdit_textEdited(const QString &arg1)
{QString content=arg1;int pos=0;//验证通过,解除按钮的禁用状态if(ui->lineEdit->validator()->validate(content,pos)==QValidator::Acceptable){//验证通过ui->pushButton->setEnabled(true);}else{ui->pushButton->setEnabled(false);}
}

例:验证两次输入的密码是否一致

使用textEdited(const QString &text)信号来触发对两个输入框内容的检查。

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//设置EchoModeui->lineEdit->setEchoMode(QLineEdit::Password);ui->lineEdit_2->setEchoMode(QLineEdit::Password);}Widget::~Widget()
{delete ui;
}void Widget::on_lineEdit_2_textEdited(const QString &arg1)
{this->compare();
}void Widget::on_lineEdit_textEdited(const QString &arg1)
{this->compare();
}void Widget::compare()
{//获取两个输入框的内容const QString& s1=ui->lineEdit->text();const QString& s2=ui->lineEdit_2->text();if(s1.isEmpty() && s2.isEmpty()){ui->label_tip->setText("密码为空");}else if(s1==s2){ui->label_tip->setText("两次输入的密码一致");}else{ui->label_tip->setText("两次输入的密码不一致");}
}

例:是否显示密码按钮,toggled信号。

利用按钮的toggled信号

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);//默认不显示密码ui->lineEdit->setEchoMode(QLineEdit::Password);
}Widget::~Widget()
{delete ui;
}void Widget::on_checkBox_toggled(bool checked)//按钮选中的状态切换时触发
{//参数为选中状态if(checked==true){ui->lineEdit->setEchoMode(QLineEdit::Normal);}else{ui->lineEdit->setEchoMode(QLineEdit::Password);}
}

2.QTextEdit多行输入框 、QPlainTextEdit纯文本输入框

  • QTextEdit支持文本格式:纯文本、富文本、markdown格式
  • QPlainTextEdit支持的文本格式:纯文本

这两个输入框、除了支持的文本格式不一样外,其他基本一致,所以以QTextEdit为例就可以啦。

属性:

markdown

输入框的内容,支持markdown格式。

能够自动将markdown文本渲染成html。

html输入框的内容,支持大部分html标签。
placeHolderText输入框为空时的提示信息
readOnly输入框是否只读。
undoRedoEnable

是否启动undo/redo功能。

undo ctrl+z:撤销

redo ctrl+y:还原撤销

autoFormating是否开启自动格式化
tabstopWidth按下一个tab键,缩进几个空格
overwriteMode是否开启覆盖写模式
acceptRichText是否接受富文本内容。
verticalScrollBarPolicy

垂直方向滚动条的出现策略。

Qt::ScrollBarAsNeeded :根据内容⾃动决定是否需要滚动条。默认值。

Qt::ScrollBarAlwaysOff :总是关闭滚动条。 

Qt::ScrollBarAlwaysOn :总是显⽰滚动条。

horizontalScrollBarPolicy

⽔平⽅向滚动条的出现策略 Qt::ScrollBarAsNeeded :根据内容⾃动决定是否需要滚动条。这是默认值。

Qt::ScrollBarAlwaysOff :总是关闭滚动条。Qt::ScrollBarAlwaysOn :总是显⽰滚动条。

信号:
 

textChanged()文本内容发生改变时触发
selectionChanged()选中范围改变时触发
sursorPositionChanged()光标移动时触发
undoAvailable(bool)

undo操作的状态切换时触发

由不可执行到可执行变化时触发一次

或不可执行到可执行时触发一次

redoAvailable(bool)redo操作的状态切换时时触发
copyAvailable(bool)文本被选中/取消时触发

例:textChanged()信号,获取输入框文本textEdit.toPlainText()

void Widget::on_textEdit_textChanged()
{//获取多行输入框的内容const QString& str=ui->textEdit->toPlainText();//还有:toHtml() toMarkdown()ui->label->setText(str);
}

没有按下回车之前,输入的内容是输入到输入法中的。

按下回车后,才会从输入法将文本输入到输入框内,触发信号。

例:selectionChanged信号,获取光标选中的文本

光标选中范围改变时触发,槽函数没有参数,没有直接传递改变的信息。

可以在信号触发后,访问输入框的textCursor对象,通过该对象可以获取光标选中范围的文本、和光标位置。

void Widget::on_textEdit_selectionChanged()//光标选中范围改变是触发selectionChanged信号
{QTextCursor cursor=ui->textEdit->textCursor();//文本光标对象qDebug()<<"selectionChanged:"<<cursor.selectedText();//获取光标选中的文本
}

例:cursorPositionChanged()信号,获取光标位置

void Widget::on_textEdit_cursorPositionChanged()//光标位置移动时触发
{QTextCursor cursor=ui->textEdit->textCursor();//文本光标对象qDebug()<<"cursorPositionChanged:"<<cursor.position();//获取光标的位置
}

例:undoAvailable(bool)和redoAvailable(bool)信号

 

void Widget::on_textEdit_undoAvailable(bool b)//undo状态改变时触发一次
{qDebug()<<"undoAvailable:"<<b;//
}void Widget::on_textEdit_redoAvailable(bool b)//redo状态改变时触发一次
{qDebug()<<"redoAvailable:"<<b;//
}

例:copyAvailable(bool b)信号

void Widget::on_textEdit_copyAvailable(bool b)//文本被选中/取消时触发
{qDebug()<<"copyAvailable:"<<b;
}

http://www.ds6.com.cn/news/6506.html

相关文章:

  • 小程序网站建设y021百度推广怎么收费的
  • 安卓从网站获取视频怎么做全网自媒体平台
  • 英文网站建设推广第一推广网
  • 做网站订金是多少优化课程设置
  • 好的网站模板电子商务网站建设教程
  • 懒人学做网站厦门关键词优化seo
  • 西安网站建设动力无限收录优美的图片app
  • 网站源码可以做淘宝客希爱力的作用与功效
  • iis网站连接数据库失败怎么开自己的网站
  • 廊坊网站建设电话提高工作效率
  • 如何分析一个网站的用户torrentkitty磁力猫
  • 网站 设计 案例 简单百度关键词快排
  • 个人域名做企业网站百度推广登录网址
  • WordPress 建电商网站株洲24小时新闻
  • 咸阳网站制作建设互联网营销策划案
  • 做网站空间哪家好seo百度贴吧
  • 十大购物网站关键词优化方法有什么步骤
  • 昌平手机网站建设近期国内新闻
  • 深圳市住房和建设局陈斌山东seo费用多少
  • 医院建设网站seo1现在怎么看不了
  • 在哪里可以做网站山西太原网络推广
  • 现在网站建设 如何保证安全如何注册自己的网站
  • 宝鸡免费做网站公司今日头条国际新闻
  • 网站开发哪家百度收录哪些平台比较好
  • 长图可以在哪些网站做seo 优化思路
  • 北京语言大学网页设计作业搜索引擎优化的分类
  • 建设个直播网站要多少钱百度搜索引擎的使用方法
  • 做问答网站要多少钱seo在线培训机构
  • wordpress 添加重庆seo网站推广费用
  • 跨境电商到什么网站做google搜索网址