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

网站访问量突然增加网站开发课程内部培训

网站访问量突然增加,网站开发课程内部培训,智能科技 光速东莞网站建设,wordpress 游客目录 一、QLineEdit 属性 二、QTextEdit 属性 三、QComboBox 属性 四、QSpinBox 属性 五、QDateTimeEdit 属性 六、QDial 属性 七、QSlider 属性 在上一篇介绍完显示类控件后,本文介绍常见的输入类控件。 一、QLineEdit QLineEdit表示一个单行输入框…

目录

一、QLineEdit

属性

二、QTextEdit

属性

三、QComboBox

属性

四、QSpinBox

属性

五、QDateTimeEdit

属性

六、QDial

属性

七、QSlider

属性


在上一篇介绍完显示类控件后,本文介绍常见的输入类控件。

一、QLineEdit

QLineEdit表示一个单行输入框,可以输入文本,但是无法换行。

属性

  •  这些属性比较枯燥,还是要看在具体代码中的实现,实现一个程序,来让用户输入个人信息。

    //设置姓名输入框ui->lineEdit_name->setFrame(true);ui->lineEdit_name->setPlaceholderText("请输入姓名");ui->lineEdit_name->setClearButtonEnabled(true);//设置密码输入框ui->lineEdit_password->setFrame(true);ui->lineEdit_password->setPlaceholderText("请输入密码");ui->lineEdit_password->setClearButtonEnabled(true);//设置密码隐藏ui->lineEdit_password->setEchoMode(QLineEdit::Password);//设置性别//设置电话ui->lineEdit_phone->setFrame(true);ui->lineEdit_phone->setPlaceholderText("请输入电话");ui->lineEdit_phone->setClearButtonEnabled(true);//电话有格式限制ui->lineEdit_phone->setInputMask("000-0000-0000");

  • InputMask所提供的限制十分有限,为了更好的约束输入,Qt提供了验证器,此处可以利用正则表达式来验证用户输入的电话号码是否合法,如果不合法,则提交按钮不能启用,如果合法,则可以点击提交按钮。

QRegExp regexp(R"(^1\d{10}$)");
ui->lineEdit_phone->setValidator(new QRegExpValidator(regexp));

^1表示字符串必须以1开头

\d表示数字

{10}表示\d重复10次

$表示结尾

由于这里用了RawString,所以不用对\d转义 

//当输入框中输入内容后,触发信号的槽函数
void Widget::on_lineEdit_phone_textEdited(const QString &arg1)
{//在槽函数中验证输入内容和正则表达式是否匹配成功QString text = arg1;int pos;//第二个参数是输出型参数,当匹配失败的时候,返回从哪个位置开始匹配失败的if(ui->lineEdit_phone->validator()->validate(text,pos) ==QValidator::Acceptable ){ui->pushButton_submit->setEnabled(true);}elseui->pushButton_submit->setEnabled(false);}

  • 编写代码,实现密码输入的二次确认,如果不一致,就显示两次输入密码不一致。

void Widget::Compare()
{QString s1 = ui->lineEdit_password->text();QString s2 = ui->lineEdit_passwordAgain->text();if(s1.isEmpty() && s2.isEmpty()){ui->label_dispaly->setText("您输入的密码为空");return;}if(s1 == s2){ui->label_dispaly->setText("输入的密码一致");}else{ui->label_dispaly->setText("输入的密码不一致");}return;
}
void Widget::on_lineEdit_password_textEdited(const QString &arg1)
{(void)arg1;this->Compare();
}void Widget::on_lineEdit_passwordAgain_textEdited(const QString &arg1)
{(void)arg1;this->Compare();
}

  • 再实现一个功能,切换密码的显示状态,密码默认是隐藏的,可以点击显示按钮来切换。

void Widget::on_checkBox_toggled(bool checked)
{if(checked){ui->lineEdit_password->setEchoMode(QLineEdit::Normal);ui->lineEdit_passwordAgain->setEchoMode(QLineEdit::Normal);}else{ui->lineEdit_password->setEchoMode(QLineEdit::Password);ui->lineEdit_passwordAgain->setEchoMode(QLineEdit::Password);}
}

二、QTextEdit

属性

常用信号

  • 获取QTextEdit中的内容

void Widget::on_textEdit_textChanged()
{const QString& content = ui->textEdit->toPlainText();qDebug() << content;
}

  • 验证输入框的信号 

void Widget::on_textEdit_selectionChanged()
{const QTextCursor& cursor = ui->textEdit->textCursor();qDebug() << "[selectionChanged] " << cursor.selectedText();
}

void Widget::on_textEdit_cursorPositionChanged()
{const QTextCursor& cursor = ui->textEdit->textCursor();qDebug() << "[cursorPositionChanged] " << cursor.position();
}

三、QComboBox

下拉框

属性

  • 核心方法

  • 核心信号 

  • 给下拉框添加条目 

ui->comboBox->addItem("巨⽆霸");
ui->comboBox->addItem("⻨辣鸡腿堡");ui->comboBox_2->addItem("薯条");
ui->comboBox_2->addItem("⻨辣鸡翅");ui->comboBox_3->addItem("可乐");
ui->comboBox_3->addItem("雪碧");

四、QSpinBox

属性

  • 核心信号 

ui->spinBox->setRange(1,5);//设置范围
ui->spinBox->setValue(3);//设置初始值

五、QDateTimeEdit

属性

  • 核心信号

  • 获取两个日期直接的差 

//获取到两个时间框的时间⽇期
QDateTime timeOld = ui->dateTimeEdit_old->dateTime();
QDateTime timeNew = ui->dateTimeEdit_new->dateTime();
// 计算⽇期差值
int days = timeOld.daysTo(timeNew);
int hours = (timeOld.secsTo(timeNew) / 3600) % 24;

六、QDial

表示一个旋钮

属性

  • 核心信号

编写程序,拖动旋钮来改变窗口不透明度

// 设置可以循环旋转ui->dial->setWrapping(true);// 设置刻度线可⻅ui->dial->setNotchesVisible(true);// 设置最⼤值为ui->dial->setMaximum(100);// 设置最⼩值为ui->dial->setMinimum(0);// 设置初始值为ui->dial->setValue(100);

void Widget::on_dial_valueChanged(int value)
{
ui->label->setText(QString("当前不透明度为: ") + QString::number(value));
this->setWindowOpacity((double)value / 100);
}

七、QSlider

表示一个滑动条。

QSlider和QDial都是继承自QAbstractSlider,用法类似。

属性

 核心信号

  •  编写程序,实现两个滑动条,一个水平、一个垂直,拖动可以改变窗口的大小。

    ui->horizontalSlider->setMinimum(100);ui->horizontalSlider->setMaximum(2000);ui->horizontalSlider->setValue(800);ui->horizontalSlider->setSingleStep(500);ui->verticalSlider->setMinimum(100);ui->verticalSlider->setMaximum(1500);ui->verticalSlider->setValue(600);ui->verticalSlider->setSingleStep(300);

void Widget::on_horizontalSlider_valueChanged(int value)
{QRect rect = this->geometry();this->setGeometry(rect.x(),rect.y(),value,rect.height());
}void Widget::on_verticalSlider_valueChanged(int value)
{QRect rect = this->geometry();this->setGeometry(rect.x(),rect.y(),rect.width(),value);
}

  • 用快捷键增加或减少滑动条的值

void Widget::on_horizontalSlider_valueChanged(int value)
{QString s = QString::number(value);ui->label->setText("当前值为"+s);
}

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);QShortcut* shortCut1 = new QShortcut(this);shortCut1->setKey(QKeySequence("-"));QShortcut* shortCut2 = new QShortcut(this);shortCut2->setKey(QKeySequence("="));//按下快捷键,发出信号,执行槽函数connect(shortCut1,&QShortcut::activated,this,&Widget::subValue);connect(shortCut2,&QShortcut::activated,this,&Widget::addValue);}void Widget::addValue()
{int v = ui->horizontalSlider->value();ui->horizontalSlider->setValue(v+5);
}void Widget::subValue()
{int v = ui->horizontalSlider->value();ui->horizontalSlider->setValue(v-5);
}
http://www.dtcms.com/wzjs/782416.html

相关文章:

  • .net php开发网站开发室内装修设计学习
  • 有哪些做包装盒的网站网站建设教程多少钱
  • 微网站开发难度wordpress连接discuz
  • 网站建设的工作百度怎么添加店铺地址
  • 站长工具关键词域名注册 万网
  • 中国个人优秀网站惠州市建设公司网站
  • 签订网站建设合同需要注意什么网站首页适配规则
  • 在线编程的网站看颜色应该搜索哪些词汇
  • 网站的构思做外贸网站要有域名
  • 单页导航网站模板营销型网站和传统网站区别
  • 查看网站是否备案小型网站有哪些
  • 如何用ps做照片模板下载网站许昌 网站建设
  • 网站建设与规划总结一线城市做网站工资有多少
  • 门户网站营销策略建立企业网站的形式
  • 惠州网站建设系统重庆网站seo优化
  • 对比网页设计网站云服务器可以做多个网站
  • 中小企业做网站推广设计企业公司网站
  • 葫芦岛手机网站建设深圳市响应式网站建设
  • 龙信建设集团网站网站广告代码检测
  • 体育论坛网站建设阳江新闻
  • 双语网站建设方案网站建设可以抵扣吗
  • 基于aws ec2免费实例进行网站建设哪些大公司用wordpress
  • 怎么找做网站的外包公司个人建一个网站多少钱
  • 企业网站建设对网络营销有哪些影响怀柔网站制作公司
  • 玉林做网站优化推广mysql进程太多wordpress
  • 建设银行官方网站官网深圳百度推广联系方式
  • 浦东新区建设局网站wordpress閱讀主题
  • 临沂网站制作哪家好电商公司简介
  • 宣城网站建设电话网址大全下载
  • 企业网站制作 南京中文企业网站模板免费下载