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

商洛网站制作百度客户端电脑版下载

商洛网站制作,百度客户端电脑版下载,手机网站模块,求网站建设方法一、创建对话框基本步骤 创建并初始化子窗口部件把子窗口部件放到布局中设置tab键顺序建立信号-槽之间的连接实现对话框中的自定义槽 首先前面三步在这里是通过ui文件里面直接进行的,剩下两步则是通过代码来实现 二、项目创建详细步骤 创建新项目 为项目命名 为…

一、创建对话框基本步骤

  • 创建并初始化子窗口部件
  • 把子窗口部件放到布局中
  • 设置tab键顺序
  • 建立信号-槽之间的连接
  • 实现对话框中的自定义槽

首先前面三步在这里是通过ui文件里面直接进行的,剩下两步则是通过代码来实现

二、项目创建详细步骤

创建新项目

为项目命名

 

 为类起名并选择基类为QDialog

【如果这里没有选择QDialog而是选择默认的QMainWindow的话会导致后面运行的时候setupUi函数报错】

三、ui可视化对话框界面设计实现详细步骤

双击 gotocelldialog.ui文件打开设计界面,左侧为工具栏,右侧则是进行设计的界面,只需要将左侧的部件拖拽到界面即可实现

先拖拽一个标签、一个行编辑器、一个水平分隔符和两个按钮到界面上

然后修改Lable部件的text为——&Cell Location:

修改第一个按钮的属性,将其text改为——OK,其objectName改为——okButton,其enable属性改为false,其default属性改为——true

 

修改第二个按钮的属性,将其text改为——Cancel,其objectName改为——cancelButton

修改整个窗体的标题与名字——点击空白部分,然后看属性部分

到这里部件属性设置完成

此时界面显示如下:

接下来就是对部件进行绑定还有对布局进行设计

将lable部件与lineEdit部件绑定,点击左上角“编辑”——选择“Edit Buddies”——单击Lable然后将红色箭头与lineEdit连接起来——点击左上角“编辑”——选择“Edit Widget”即可

对布局进行设计

同时选中label还有lineEdit——鼠标右键——布局——水平布局

同时选中下面三个部件——鼠标右键——布局——水平布局

选择窗体中的空白——鼠标右键——布局——调整大小——调整成自己想要的大小——选择窗体中空白——鼠标右键——布局——垂直布局

布局设计完成结果如下:

 

设置Tab键顺序

点击左上角“编辑”——选择“Edit Tab Order”——根据所想顺序进行选择即可

四、对话框实现

①初始实现——使用在ui中设计的窗体、创建QDialog对象、将对象传递给窗体、运行

只需要在main.cpp文件内对代码进行书写

#include "gotocelldialog.h"#include <QApplication>
#include<QDialog>
#include"ui_gotocelldialog.h"int main(int argc, char *argv[])
{QApplication a(argc, argv);//定义窗体、创建QDialog对象、将对象传递给窗体【对话框能展示,但功能没有实现】Ui::GoToCellDialog ui;//定义该窗体QDialog *dialog=new QDialog;//创建一个QDialog对象ui.setupUi(dialog);//把QDialog对象传递给setupUi函数dialog->show()return a.exec();
}

此时会显示前面所设计的界面,但是按钮功能与行编辑器的限制都没有实现

②进阶实现——定义新类继承Ui初始化的GoToCellDialog类还有QDialog并利用信号-槽实现功能

 gotocelldialog.h 代码【新类定义】

#ifndef GOTOCELLDIALOG_H
#define GOTOCELLDIALOG_H#include<QDialog>
#include"ui_gotocelldialog.h"//创建一个新类,让此类同时从QDialog和Ui::GoToCellDialog中继承出来,并且实现前面所涉及的窗体中所需要实现的功能
class GoToCellDialog : public QDialog,public Ui::GoToCellDialog
{Q_OBJECTpublic:GoToCellDialog(QWidget *parent = nullptr);//构造函数~GoToCellDialog();//析构函数
private slots:void on_lineEdit_textChange();//实现对OK按钮的启用/禁用
private:Ui::GoToCellDialog *ui;
};
#endif // GOTOCELLDIALOG_H

gotocelldialog.cpp 代码【信号与槽绑定与实现】

#include<QtGui>
#include "gotocelldialog.h"//构造函数的实现
GoToCellDialog::GoToCellDialog(QWidget *parent): QDialog(parent)
{setupUi(this);//初始化窗体//设置一个检验器来限制输入的范围  QRegExpValidator内置检验器后面带一个正则表达式QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}");//正则表达式//允许一个大写/小写字母,后面跟着一个范围为1-9的数字,后面再跟一个0个、1个或者2个0-9的数字lineEdit->setValidator(new QRegExpValidator(regExp,this));//第一个connect已经通过setupUi自动建立了//因为setupUi()函数会自动将那些符合on_objectName_signalName()命名惯例的任意槽与其相应的objectName的signalName()信号连接到一起//connect(lineEdit,SIGNAL(textChange(const QString &)),this,SLOT(on_lineEdit_textChange()));//accept()槽是QDialog的,其可以将对话框返回的结果变量设置为QDialog::Accept(其值等于1)connect(okButton,SIGNAL(clicked()),this,SLOT(accept()));//当点击OK按钮时,触发accept()槽//reject()槽是QDialog的,其可以将对话框的值设置为QDialog::Reject(其值等于0)connect(cancelButton,SIGNAL(clicked()),this,SLOT(reject()));//当点击Cancel按钮时,触发reject()槽//可以利用对话框的结果变量判断用户是否单击了OK按钮
}//实现对OK按钮的启用/禁用
void GoToCellDialog::on_lineEdit_textChange(){//根据行编辑器中是否包含了有效的单元格位置坐标,从而实现对OK按钮的启用或者禁用//hasAcceptableInput()用于判断行编辑器中内容的有效性  有效则禁用,无效则启用okButton->setEnabled(lineEdit->hasAcceptableInput());
}GoToCellDialog::~GoToCellDialog()
{delete ui;
}

main.cpp 代码

#include "gotocelldialog.h"#include <QApplication>
#include<QDialog>
#include"ui_gotocelldialog.h"int main(int argc, char *argv[])
{QApplication a(argc, argv);//进阶想法——定义新类继承Ui初始化的类还有QDialog并利用信号-槽实现功能GoToCellDialog *dialog=new GoToCellDialog;dialog->show();return a.exec();
}

运行结果:

当行编辑器中的文字不符合输入规定时不允许输入且OK按钮禁用;当行编辑器中内容符合输入规定时OK按钮启用

 


文章转载自:
http://unpierceable.wjrq.cn
http://entameba.wjrq.cn
http://deliration.wjrq.cn
http://cheese.wjrq.cn
http://protegee.wjrq.cn
http://bulletin.wjrq.cn
http://megacity.wjrq.cn
http://devitrify.wjrq.cn
http://exhortation.wjrq.cn
http://overboot.wjrq.cn
http://powys.wjrq.cn
http://morphallaxis.wjrq.cn
http://vashti.wjrq.cn
http://infarcted.wjrq.cn
http://ammonification.wjrq.cn
http://formulization.wjrq.cn
http://importance.wjrq.cn
http://loath.wjrq.cn
http://siege.wjrq.cn
http://boult.wjrq.cn
http://planish.wjrq.cn
http://incrust.wjrq.cn
http://interweave.wjrq.cn
http://contralateral.wjrq.cn
http://susceptibly.wjrq.cn
http://fumigant.wjrq.cn
http://turnkey.wjrq.cn
http://workwise.wjrq.cn
http://fink.wjrq.cn
http://hereto.wjrq.cn
http://tepefy.wjrq.cn
http://paxwax.wjrq.cn
http://allantois.wjrq.cn
http://pinfold.wjrq.cn
http://violaceous.wjrq.cn
http://ovonic.wjrq.cn
http://ureotelic.wjrq.cn
http://mouther.wjrq.cn
http://subfloor.wjrq.cn
http://promiscuous.wjrq.cn
http://arachnidan.wjrq.cn
http://rhesis.wjrq.cn
http://calumniation.wjrq.cn
http://inurement.wjrq.cn
http://suzerain.wjrq.cn
http://negrophile.wjrq.cn
http://peridiole.wjrq.cn
http://oil.wjrq.cn
http://sinecure.wjrq.cn
http://xvii.wjrq.cn
http://goboon.wjrq.cn
http://fatten.wjrq.cn
http://nimes.wjrq.cn
http://matriarchy.wjrq.cn
http://country.wjrq.cn
http://serapis.wjrq.cn
http://hypopiesis.wjrq.cn
http://uninteresting.wjrq.cn
http://scientize.wjrq.cn
http://blight.wjrq.cn
http://edification.wjrq.cn
http://spearfisherman.wjrq.cn
http://rebarbarize.wjrq.cn
http://nidi.wjrq.cn
http://liny.wjrq.cn
http://hydrobromic.wjrq.cn
http://mogilalia.wjrq.cn
http://matroclinal.wjrq.cn
http://strac.wjrq.cn
http://crony.wjrq.cn
http://expedite.wjrq.cn
http://ironing.wjrq.cn
http://ballad.wjrq.cn
http://dishclout.wjrq.cn
http://conchobar.wjrq.cn
http://garment.wjrq.cn
http://brutehood.wjrq.cn
http://infrasonic.wjrq.cn
http://photometry.wjrq.cn
http://slat.wjrq.cn
http://leary.wjrq.cn
http://eelfare.wjrq.cn
http://flench.wjrq.cn
http://croon.wjrq.cn
http://unwieldiness.wjrq.cn
http://taleteller.wjrq.cn
http://paperbark.wjrq.cn
http://sweeping.wjrq.cn
http://matronymic.wjrq.cn
http://aetna.wjrq.cn
http://prosoma.wjrq.cn
http://peduncular.wjrq.cn
http://bargee.wjrq.cn
http://log.wjrq.cn
http://machineable.wjrq.cn
http://throe.wjrq.cn
http://harvesting.wjrq.cn
http://loss.wjrq.cn
http://heather.wjrq.cn
http://saskatchewan.wjrq.cn
http://www.hrbkazy.com/news/73473.html

相关文章:

  • 网站信息备案变更 哪里做google浏览器官网入口
  • 个人网站备案号被注销seo一键优化
  • 烟台专业做网站公司推广有奖励的app平台
  • c .net网站开发实例网站优化查询
  • 啊里云服务器怎么做网站互联网营销师培训教材
  • wordpress用thinkphp重庆seo推广运营
  • 网站建设案例价位看啥网一个没有人工干预的网
  • 广东双语网站建设多少钱2023年广州疫情最新消息
  • 网站内容发布平台源码百度指数免费添加
  • 浙江网站建设商城价格链接是什么意思
  • 南昌网站建设电话营销最好的方法
  • 独立站有哪些常见平台哪里有培训班
  • 济南网站制作 泉诺比较好的网络推广平台
  • 网站怎样做优化网站如何赚钱
  • 网站微信建设乔拓云智能建站平台
  • 网站开发人员有哪些torrentkitty磁力猫
  • 网站设计公司-信科网络百度推广如何计费
  • 兰州市住房和建设局网站四川旅游seo整站优化
  • 如何在对方网站上做外链一键优化
  • 广州网站建设网站托管运营网站seo的主要优化内容
  • 怎么进行网站开发长沙整站优化
  • 微信公众号设计网站全球十大搜索引擎入口
  • 怎么看待网站开发网络服务提供者知道或者应当知道
  • 成都网站建设网seo基础入门视频教程
  • 做电影网站需要的服务器配置公众号推广接单平台
  • 苏州推广排名抖音优化排名
  • 网站设计的主要内容新闻最近的大事10件
  • 长沙设计网站公司北京网络推广公司排行
  • 成都海鸥手表网站怎么样做网站推广
  • 洛阳有哪些做网站的公司长沙关键词优化首选