qt学习(四)主窗选钮,显示新窗口。
游戏有选区这个习惯, 当然,我特指《冒险岛》了,有的时候就是打开一个主屏幕上五个按钮让你点击进入, 甚至有的时候进去了还要选哪个频道,游戏服务器都得分区,频道来完成功能。现在我们先进入想选的区,不需要的可以看以后的登陆窗口了。
这一次的主要功能是完成选区,选完进入输入账号界面。
这次用的是一个点完出啦一个所以需要两个窗口,在原有的基础上新建qt设计师界面类。选择dialogwithoutbutton。
把最后一个要显示的当作主界面, 其他的都可以选择dialog模板,


完成以后,画ui界面, 一个dialog上有5个按钮, 按了触发主窗口,这个就不多说了, 但要注意button的对象名要写清楚。

有了这些就可以利用点击按钮来发送信号给亲爱的对话框催他进入主窗口, 哈哈 ,我们又进一步,怎么发信号前进呢?
把需要的背景截下来填充进去,我们在信号与槽里加下面的。

下面主要是程序的实现了,想想,有什么做呢????
我要显示一张图片,点击一个按钮,再显示一张图片(真正做的时候要用connect的方法写s四个槽再加点料, 因为要涉及数据库, 我这个进入数据库不会认识的)
显示先不说, 按钮需要一个判断,
用if(my1.exec() == QDialog::Accepted)
{
w.show();
}
判断我们上面定义的信号和槽发过来的是不是accept信号,是就if里面的 .
显示图片不是就show那么简单, 你要想让一个没有五官的白纸好看就得加点料
1 背景图铺满对话框需要加设置允许setAutoFillBackground
2 加载图片
QPalette palette;
//palette.setColor(QPalette::Background, QColor(192,253,123));
palette.setBrush(QPalette::Background, QBrush(QPixmap("G:/bunker/nGui/49ffd472f029090e57de7.jpg")));
my1.setPalette(palette);
3 dialog不是主窗口也所以要设置一下,
my1.setWindowFlags(Qt::Dialog);//主的才能全屏,所以给副的权力
my1.showFullScreen();
widget。h
qt代码不是c++的 main.cpp 主要是main函数修改其他的不用管了。
#include <QtGui/QApplication>
#include "widget.h"
#include "mydlg.h"
#include <QPalette>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;//主
myDlg my1;//先出的对话框 my1.setAutoFillBackground(true);
QPalette palette;
//palette.setColor(QPalette::Background, QColor(192,253,123));
palette.setBrush(QPalette::Background, QBrush(QPixmap("G:/bunker/nGui/49ffd472f029090e57de7.jpg")));
my1.setPalette(palette);
my1.setWindowFlags(Qt::Dialog);//主的才能全屏,所以给副的权力
my1.showFullScreen(); if(my1.exec() == QDialog::Accepted)
{
w.show(); return a.exec();
}
else return ;
}

qt学习(四)主窗选钮,显示新窗口。的更多相关文章
- PyQt(Python+Qt)学习随笔:复选框checkBox的tristate属性
在Qt Designer中,tristate属性是复选框checkBox相比较于QAbstractButton多出来的唯一属性. tristate属性表示复选框是三种状态还是两种状态,如果trista ...
- Qt学习(四)—实例涂鸦画板mspaint
一.Qt图形绘制 自己在Qt开源社区在自学yafeilinux前辈的<Qt快速入门系列教程>中的图形篇,结合所学的知识,可以做一个涂鸦板实例 二.实现涂鸦板 1.新建工程mspaint, ...
- 【转载】解决window.showModalDialog 模态窗口中location 打开新窗口问题
来源: <http://bibipear.blog.sohu.com/143449988.html> 在我们的项目中,通常会用到showModalDialog 打开一个模态的子窗口,但是在 ...
- Qt 学习之路 2(57):可视化显示数据库数据
Qt 学习之路 2(57):可视化显示数据库数据(skip) 豆子 2013年6月26日 Qt 学习之路 2 26条评论 前面我们用了两个章节介绍了 Qt 提供的两种操作数据库的方法.显然,使用QSq ...
- Qt学习笔记-嵌入式qt程序支持显示中文
移植后得qt程序在开发板上运行时无法显示中文. 拷贝windows中的字体也不行. 从网上找到方法. 添加以下代码:需要头文件 #include <QTextCodec> QTextCo ...
- QT学习之第一个程序
QT学习之第一个程序 目录 手动创建主窗口 居中显示 添加窗口图标 显示提示文本 Message Box的应用 手动连接信号与槽 手动创建主窗口 窗口类型 QMainWindow: 可以包含菜单栏.工 ...
- Qt 学习之路 2(53):自定义拖放数据
Qt 学习之路 2(53):自定义拖放数据 豆子 2013年5月26日 Qt 学习之路 2 13条评论上一章中,我们的例子使用系统提供的拖放对象QMimeData进行拖放数据的存储.比如使用QM ...
- Qt 学习之路 2(10):对象模型
Home / Qt 学习之路 2 / Qt 学习之路 2(10):对象模型 Qt 学习之路 2(10):对象模型 豆子 2012年9月2日 Qt 学习之路 2 45条评论 标准 C++ 对象模 ...
- Qt 学习之路 2(4):信号槽
Home / Qt 学习之路 2 / Qt 学习之路 2(4):信号槽 Qt 学习之路 2(4):信号槽 豆子 2012年8月23日 Qt 学习之路 2 110条评论 信号槽是 Qt 框架引以 ...
随机推荐
- boost propertyTree
Boost PropertyTree provides a tree structure to store key/value pairs. Tree structures means that a ...
- 回顾Servlet及SpringMVC
什么是Servlet? Servlet是运行在Web服务器或应用服务器上的程序,它是作为来自Web浏览器或其他HTTP客户端的请求和HTTP服务器上的数据库 或应用程序之间的中间层. servlet架 ...
- HDU 6638 - Snowy Smile 线段树区间合并+暴力枚举
HDU 6638 - Snowy Smile 题意 给你\(n\)个点的坐标\((x,\ y)\)和对应的权值\(w\),让你找到一个矩形,使这个矩阵里面点的权值总和最大. 思路 先离散化纵坐标\(y ...
- C#_winform登陆框验证码的实现
验证码技术已愈来愈成熟,从最初的数字.字母.字符.汉字已经到目前的语言,其应用也甚广,之前大多数只有在网站上可以看到,现在在一些客户端软件也经常可见(比如证券相关软件).之前做的一个基于 C# 客户端 ...
- postgresql创建表
创建表时候有些方法:https://blog.csdn.net/qq_16605855/article/details/78905193
- sql优化工具SQLAdvisor的安装
原文地址:https://www.cnblogs.com/beliveli/articles/6541936.html 本机安装包路径: D:\share\src\linux-mysql\sqlAdv ...
- 【Java架构:持续交付】一篇文章搞掂:持续交付理论
一.持续集成.持续交付.DevOps概念,关系等 持续集成(Continuous integration/CI) 持续交付(Continuous delivery/CD) 持续部署() 持续 (Con ...
- webbrowser 防止读取 缓存
http://bbs.csdn.net/topics/240011502 引用 3 楼 kelei0017 的回复: Delphi(Pascal) codeprocedure TInformation ...
- 在BUG分支下创建分支,开发后合并到bus分支
在BUG分支下创建分支 1.切换到bus分支 2,创建新分支 git checkout -b bugfix/fix_vedio_0627 3,把创建的分支push到远程分支 git push orig ...
- Visual Studio Code 键盘参考表
2019年4月6日,对照中英翻译. 一般 Ctrl+Shift+P, F1 显示命令调色板 Ctrl+P 快速打开,转到文件… Ctrl+Shift+N 新建窗口/实例 Ctrl+Shift+W ...
