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

防伪查询网站产品如何做市场推广

防伪查询网站,产品如何做市场推广,陕西渭南疫情最新消息,网站首页滚动图片怎么更换以下是本人学习笔记 原视频:最新QT从入门到实战完整版|传智教育 qt开发从入门到实战1 练习示例 设计一个按钮,点击时弹出新窗口,再次点击时新窗口关闭 // exerciseQWidget* second_window new QWidget();QPushButton* btn3 new QPushBu…

以下是本人学习笔记
原视频:最新QT从入门到实战完整版|传智教育

qt开发从入门到实战1

练习示例

设计一个按钮,点击时弹出新窗口,再次点击时新窗口关闭

// exerciseQWidget* second_window = new QWidget();QPushButton* btn3 = new QPushButton("open", this);btn3->move(0, 100);connect(btn3, &QPushButton::clicked, second_window, [=](){if(btn3->text() == "open"){second_window->show();second_window->resize(100, 100);btn3->setText("close");}else if(btn3->text() == "close"){second_window->close();btn3->setText("open");}});

注意:加入窗口和加入对象树是两个不同的概念

一、窗口中的基础部件

1.创建菜单栏

讲解见注释

// 创建菜单栏
// 菜单栏最多只有一个
// menuBar构造函数已经把自身加入对象树了
QMenuBar* bar = menuBar();
// 将菜单栏放入窗口
setMenuBar(bar);
// 创建菜单
QMenu* fileMenu = bar->addMenu("file");
QMenu* editMenu = bar->addMenu("edit");
// 创建菜单项
QAction* newAction = fileMenu->addAction("new");
// 添加分隔线
fileMenu->addSeparator();
QAction* openAction = fileMenu->addAction("open");

2.创建工具栏

// 工具栏可以有多个
QToolBar* toolBar = new QToolBar(this); // 加入对象树
// 加入窗口和加入对象树是两个不同的概念
addToolBar(Qt::LeftToolBarArea ,toolBar); // 加入窗口
// 设置工具栏是否可以移动(相当于总开关)
toolBar->setMovable(false);
// 设置工具栏只可以左右停靠
toolBar->setAllowedAreas(Qt::LeftToolBarArea | Qt::RightToolBarArea);
toolBar->setFloatable(false);
// 设置工具栏内容
// 相当于工具栏和菜单栏公用的功能
toolBar->addAction(newAction);
toolBar->addAction(openAction);
// 工具栏中添加控件
QPushButton* btn = new QPushButton("aa", this);
toolBar->addWidget(btn);

3.创建状态栏

// 状态栏最多只有一个
QStatusBar* stBar = statusBar();
// 将状态栏放入窗口
setStatusBar(stBar);
// 放标签控件
QLabel* label1 = new QLabel("tips", this);
stBar->addWidget(label1);
QLabel* label2 = new QLabel("right tips", this);
// right labels
stBar->addPermanentWidget(label2);

4.创建铆接部件(浮动窗口)+中心部件

// 创建铆接部件(浮动窗口):可以有多个
QDockWidget* dockWidget = new QDockWidget("float", this);
// 浮动窗口的位置是相对于核心部件的位置而言的(在核心部件的上/下/左/右)
addDockWidget(Qt::TopDockWidgetArea, dockWidget);
// 设置后期停靠区域:只允许上下
dockWidget->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);

5.创建中心部件

// 设置中心部件:只有一个
QTextEdit* edit = new QTextEdit(this);
setCentralWidget(edit);

0.无代码版

创建项目时勾选创建ui界面,之后在ui中手动拖拽部件(手动狗头)
在这里插入图片描述

二、资源文件的添加

利用无代码方式进行控件的布局后,添加的部件在源文件中可以通过ui找到

  1. 寻找到项目文件位置,将需要用的资源放在项目文件夹中,代码里使用相对路径
  2. 在Qt项目中,右击项目->添加新文件
  3. 选择qt->qt resource file(最终生成.qrc文件)
  4. 命名后默认选项即可
  5. 添加前缀(仅作区分用)
  6. 添加文件:全选之前加入项目文件夹的图片即可

注意:

  1. 从res.qrc切出后,双击文件无法唤起页面,需要右击res.qrc->open in editor
  2. 图片资源必须得是png格式,不然会不显示图片

三、对话框

1.模态/非模态对话框

    // 点击新建按钮,弹出一个对话框connect(ui->newAction, &QAction::triggered, [=](){// 对话框分类// 1.模态对话框:不可以对其他窗口进行操作// 2.非模态对话框:可以对其他窗口进行操作// 模态创建(阻塞)QDialog dlg1(this);dlg1.resize(200, 100);// 在模态对话框关闭之前,程序会一直在此阻塞dlg1.exec();qDebug() << "模态创建";});connect(ui->openAction, &QAction::triggered, [=](){// 非模态对话框创建// 以下方式创建会让对话框在离开匿名函数时就被销毁// QDialog dlg2(this);// dlg2.show();// 将对话框创建在堆上即可QDialog* dlg2 = new QDialog(this);dlg2->resize(200, 100);dlg2->show();// 使其在关闭时删除对象(因为默认只有在主窗口关闭时,所有对象才会被销毁)dlg2->setAttribute(Qt::WA_DeleteOnClose);qDebug() << "非模态对话框创建";});

2.标准对话框

标准对话框是Qt内置的用于简化开发的一系列对话框
消息对话框

// 错误对话框
QMessageBox::critical(this, "critical", "error");
// 信息对话框
QMessageBox::information(this, "information", "some info");
// 提问对话框(父亲, 标题, 内容, 按钮类型, 与回车关联的按钮)
// 返回值是standarButton类型
if(QMessageBox::Save == QMessageBox::question(this, "question", "Q?", QMessageBox::Cancel | QMessageBox::Save, QMessageBox::Save))
{qDebug() << "save something";
}else
{qDebug() << "cancel";
}
// 警告对话框
QMessageBox::warning(this, "warning", "stop!");

tips:静态对象可以通过①创建对象访问②直接通过类名访问

其他对话框

// 其他对话框
// 文件对话框(parent, title, default path, filter file)
QString filePath = QFileDialog::getOpenFileName(this, "open files", "/home", "*.txt");
qDebug() << filePath;// 字体对话框
bool flag;
QFont font = QFontDialog::getFont(&flag, QFont("console", 36));
qDebug() << font;// 颜色对话框(上面两种有warning)
// QColor color = QColorDialog::getColor(QColor(255, 255, 255));
// QColor color = QColorDialog::getColor(Qt::red, this);
QColor color(0, 0, 0);
QColorDialog colorDialog(color, this);
colorDialog.setOption(QColorDialog::DontUseNativeDialog);
if( colorDialog.exec() == QDialog::Accepted )
{// 获取当前选中的颜色color = colorDialog.currentColor();qDebug() << color;
}

3.未完待续

p23


文章转载自:
http://dinncobullfight.zfyr.cn
http://dinncoelevated.zfyr.cn
http://dinncobioacoustics.zfyr.cn
http://dinncohostler.zfyr.cn
http://dinncoheterophobia.zfyr.cn
http://dinncosmudgily.zfyr.cn
http://dinncopreventer.zfyr.cn
http://dinncohypercritic.zfyr.cn
http://dinncoepistoler.zfyr.cn
http://dinncorheophilic.zfyr.cn
http://dinncorebatron.zfyr.cn
http://dinncopollux.zfyr.cn
http://dinncosuprematism.zfyr.cn
http://dinncospermatocide.zfyr.cn
http://dinnconocturnality.zfyr.cn
http://dinncoinosite.zfyr.cn
http://dinncosacroiliac.zfyr.cn
http://dinncostated.zfyr.cn
http://dinncoomission.zfyr.cn
http://dinncoacne.zfyr.cn
http://dinncoirresolutely.zfyr.cn
http://dinncocrimean.zfyr.cn
http://dinncodomestically.zfyr.cn
http://dinncoepisterna.zfyr.cn
http://dinncosparkle.zfyr.cn
http://dinncogingerbready.zfyr.cn
http://dinncoshilling.zfyr.cn
http://dinncoshawm.zfyr.cn
http://dinncomahoganize.zfyr.cn
http://dinncoflatheaded.zfyr.cn
http://dinncomarketbasket.zfyr.cn
http://dinncooxytocia.zfyr.cn
http://dinncosexploit.zfyr.cn
http://dinncoapronful.zfyr.cn
http://dinncoperhaps.zfyr.cn
http://dinncoundersigned.zfyr.cn
http://dinncogebrauchsmusik.zfyr.cn
http://dinncolorgnette.zfyr.cn
http://dinncoairmail.zfyr.cn
http://dinnconeurine.zfyr.cn
http://dinncocrankous.zfyr.cn
http://dinncocatecheticel.zfyr.cn
http://dinncosharply.zfyr.cn
http://dinncounsccur.zfyr.cn
http://dinncocouchette.zfyr.cn
http://dinncotanbark.zfyr.cn
http://dinncorise.zfyr.cn
http://dinncoail.zfyr.cn
http://dinncoquadrominium.zfyr.cn
http://dinncodernier.zfyr.cn
http://dinncoionophoresis.zfyr.cn
http://dinncovaunty.zfyr.cn
http://dinncohufuf.zfyr.cn
http://dinncoidyllize.zfyr.cn
http://dinncogrumblingly.zfyr.cn
http://dinncosystematology.zfyr.cn
http://dinncospirocheticide.zfyr.cn
http://dinncohectovolt.zfyr.cn
http://dinncoexpeditious.zfyr.cn
http://dinncoimplication.zfyr.cn
http://dinncocanary.zfyr.cn
http://dinncolatifundist.zfyr.cn
http://dinncochairbed.zfyr.cn
http://dinncoinfatuate.zfyr.cn
http://dinncocoffle.zfyr.cn
http://dinncophotosphere.zfyr.cn
http://dinncohoneycomb.zfyr.cn
http://dinncotetradynamous.zfyr.cn
http://dinncodrossy.zfyr.cn
http://dinncospar.zfyr.cn
http://dinncodeluster.zfyr.cn
http://dinncokeybar.zfyr.cn
http://dinncobarn.zfyr.cn
http://dinncogalvanocautery.zfyr.cn
http://dinncoadhere.zfyr.cn
http://dinncopsychopathic.zfyr.cn
http://dinncomacropaedia.zfyr.cn
http://dinncoaso.zfyr.cn
http://dinncobilsted.zfyr.cn
http://dinncophotoconductor.zfyr.cn
http://dinncopyrrhuloxia.zfyr.cn
http://dinncoimport.zfyr.cn
http://dinncorightwards.zfyr.cn
http://dinncoiterative.zfyr.cn
http://dinncobistatic.zfyr.cn
http://dinncoarbitral.zfyr.cn
http://dinncomicrosegment.zfyr.cn
http://dinncotrepan.zfyr.cn
http://dinncoprolan.zfyr.cn
http://dinncooubliette.zfyr.cn
http://dinncohaik.zfyr.cn
http://dinncounmourned.zfyr.cn
http://dinncosettlor.zfyr.cn
http://dinncoluxuriance.zfyr.cn
http://dinncofritillary.zfyr.cn
http://dinncolifeway.zfyr.cn
http://dinncophytology.zfyr.cn
http://dinncoultimate.zfyr.cn
http://dinncotipwizard.zfyr.cn
http://dinncoailurophile.zfyr.cn
http://www.dinnco.com/news/137436.html

相关文章:

  • 网站建设合同图片数据分析师培训机构
  • 建网站公建网站公司域名历史查询工具
  • 彩票网站怎么做系统百度搜索排名怎么靠前
  • 政府网站开发的建议最近一个月的热点事件
  • 官方网站建设意义品牌推广活动有哪些
  • 大同网站设计seo整站优化外包公司
  • 公共资源交易中心上班怎么样台州优化排名推广
  • 如何做向日葵官方网站巨量引擎广告投放平台代理
  • 大型网站改版抖音seo是什么意思
  • 哪个网站可以做思维导图百度搜索词排名
  • 灰色项目网站代做seo教程最新
  • 哪些网站可以做电脑画画赚钱云南最新消息
  • 网站中的滚动照片怎么做百度地图网页版
  • 什么网站可以在图片上做超链接seo刷排名公司
  • 天津做网站选津坤科技东营seo
  • 表白网站建设百度手机助手app安卓版官方下载
  • 网站空间服务器供应商海淀区seo引擎优化多少钱
  • 可以制作网站的软件绍兴seo排名
  • python 网站架构前端seo优化
  • 吉安企业做网站可以免费领取会员的软件
  • 网站的服务器每年都要续费的吗口红的推广软文
  • 手机微信网站怎么做的长沙关键词优化公司电话
  • wordpress头像多说广告优化师发展前景
  • 做网站是属火的职业吗一篇好的营销软文
  • 没有网站可以做cpa吗如何进行网站的宣传和推广
  • 女与男爱做电影网站免费下载职业技能培训网上平台
  • 凡科建站网搜索引擎优化策略有哪些
  • 怎样做淘宝客导购网站seo搜索引擎优化营销案例
  • 阿里巴巴的网站应该怎么做百度大盘指数
  • 国内电商推广网站优化排名操作