** QT建立游戏登录界面 1、新建一个界面(app)工程
点击 “欢迎” 选项,点击 “New Project” 弹出新建项目界面,在项目中选择 Application -> QT Widgets Application 选项,再点击 choose ,在弹出的新界面中修改工程名称,点击下一步 -》kit selection 界面默认点击下一步-》类信息界面中进行类名选择:Widget,下一步 -》新界面点击完成;工程建立完毕。
2、对游戏界面进行设计 2.1打开设计界面 点击“ 编辑” ,打开Forms 目录下的 .ui文件,弹出如下框图
2.2 设计界面的编辑 line Edit托选账号框;placeholder设置文字背景 设置文字类型和大小
设置文字颜色 选中目标,右键打开列表,选择:改变目标样式,点击箭头处,选择color。 隐藏密码:设置密码为隐藏模式
规范化、美化界面
利用上述六大工具可对界面进行美化。美化结果如下图
2.3插入图片和动图 如何将图片放置于工程中? (1)将图片放到工程文件目录下,如下图
(2)创建工程资源文件 在工程新建一个资源文件
填写资源文件的名称:hh
点击完成即可获取资源文件:hh.qrc
(3)添加文件进入工程的资源文件 首先要添加前缀,才能添加外部的资源进入资源文件,只有新建的资源文件第一次添加外部资源时才需要先添加前缀,否则只需添加文件就好了。点击Open With-》资源编辑器即可进入添加前缀、文件页面。
3、建立子界面 选中工程 点击右键 添加新文件
进行界面模板选择,一般选择 Widgei 模式(考虑模态:Dialog with Buttons和非模态:Widgei的选择) 修改类名,只用修改它。改成你想要的名字,英文名,下一步---->完成。成功在工程中创建子界面。
4、界面链接 例如:点击登录后进入子界面;操作步骤: 右键点击登录,在弹出框中选择转到槽——> 点击ok后对应界面程序文件.cpp会生成槽链接函数,如下: 在函数中写入跳转函数,即可通过槽链接函数跳转至指定界面。
设计页面过程中遇到的问题 1、怎样输入文件路径 以字符串形式输入:即“ D:/qt/qt.c/Game_Login/dnfmusic.WAV ” 目录之间以斜杠隔开。 2、添加头文件注意事项 有时候不是添加一个 #include 就行了
有一些头文件需要在.pro文件中添加QT += ****;如上图,不然的话头文件就回添加不成功。 3、定义全局变量 在对应的头文件的类中的public:
4、自定义函数怎么写? 自定义函数要在.h文件中进行编写 5、如何使用connect 函数实现返回上一层界面? QMessageBox::information(this,“提示”,“登录成功”); Yugame *w = new Yugame(); //建立类指针,指向构建的新界面(即子界面) //建立信号和槽的连接,connect(mediaObject,signal(finish(),this,slot(MusicOn()))) ; //connect(w, SIGNAL(my_type()), this, SLOT(show())); //若是my_type() 被W界面的触发 ,则会触发connect函数,执行this下的show();
w->setGeometry(this->geometry()); //geometry是子界面的尺寸还有位置信息 w->show(); //显示子界面 sound->stop(); //关闭音频 connect(w, SIGNAL(my_type()), this, SLOT(show())); connect(w, SIGNAL(my_type()), sound, SLOT(play())); this->hide(); //隐藏登录界面;connect(w, SIGNAL(my_type()), this, SLOT(show()));
由程序可知,在connect函数中: W:子界面的指针,Yugame 为创建子界面时的申请的类名;Yugame *w = new Yugame(); 即为创建一个类指针,且指针链接到构建的子界面。
my_type():自定义函数
connect(w, SIGNAL(my_type()), sound, SLOT(play())); 意思就是:在W界面中,如果my_ttype()函数被使用,则会返回上一界面执行sound->play(); 子界面应用自定义函数触发connect函数的做法: emit my_type(); // emit引用my_type(),触发connect函数
6、如何播放音频? 在.pro中加入:QT += multimedia 在程序中添加头文件 :#include or #include “QMovie” 在父界面程序中添加:(在声明全局变量:QSound *sound;的情况下) #if 1 //动态播放模式,且设为无线循环播放 sound = new QSound(“D:/qt/qt.c/Game_Login/dnfmusic.WAV”,this); //构建 QSound 对象,即构建播放对象 //sound->setLoops(-1); //设置为无限循环播放,注意:要先把播放次数设置放在sound->play();前 sound->play(); //播放 sound->setLoops(10); //设置循环播放次数 为10次 注:dnfmusic.WAV 为资源文件内的音频
7、如何插入动图? 在程序中添加头文件 :#include or #include “QMovie” 在父界面程序中添加: ui->label_4->setScaledContents(true); QMovie *movie = new QMovie(":/dnffengshen.gif"); ui->label_4->setMovie(movie); movie->start(); 注::/dnffengshen.gif 为资源文件内的动图 8、如何在跳转进入下一界面时关闭当前界面背景音乐? 首先,一定要设置QSound 的全局变量,不然没法引用stop()函数关闭音频; 其次,要将stop()函数放在槽链接函数里头,最好放在子界面类指针的后面。 最后,是否在析构函数中删除音频对象,取决于是否会返回界面。
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:
全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;全新的 KaTeX数学公式 语法;增加了支持甘特图的mermaid语法1 功能;增加了 多屏幕编辑 Markdown文章功能;增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;增加了 检查列表 功能。撤销:Ctrl/Command + Z 重做:Ctrl/Command + Y 加粗:Ctrl/Command + B 斜体:Ctrl/Command + I 标题:Ctrl/Command + Shift + H 无序列表:Ctrl/Command + Shift + U 有序列表:Ctrl/Command + Shift + O 检查列表:Ctrl/Command + Shift + C 插入代码:Ctrl/Command + Shift + K 插入链接:Ctrl/Command + Shift + L 插入图片:Ctrl/Command + Shift + G
直接输入1次#,并按下space后,将生成1级标题。 输入2次#,并按下space后,将生成2级标题。 以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。
强调文本 强调文本
加粗文本 加粗文本
标记文本
删除文本
引用文本
H2O is是液体。
210 运算结果是 1024.
链接: link.
图片:
带尺寸的图片:
居中的图片:
居中并且带尺寸的图片:
当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.
// An highlighted block var foo = 'bar';一个简单的表格是这么创建的:
项目Value电脑$1600手机$12导管$1使用:---------:居中 使用:----------居左 使用----------:居右
第一列第二列第三列第一列文本居中第二列文本居右第三列文本居左SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:
TYPEASCIIHTMLSingle backticks'Isn't this fun?'‘Isn’t this fun?’Quotes"Isn't this fun?"“Isn’t this fun?”Dashes-- is en-dash, --- is em-dash– is en-dash, — is em-dash一个具有注脚的文本。2
Markdown将文本转换为 HTML。
您可以使用渲染LaTeX数学表达式 KaTeX:
Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n−1)!∀n∈N 是通过欧拉积分
Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t   . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=∫0∞tz−1e−tdt.
你可以找到更多关于的信息 LaTeX 数学表达式here.
可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::
张三 李四 王五 你好!李四, 最近怎么样? 你最近怎么样,王五? 我很好,谢谢! 我很好,谢谢! 李四想了很长时间, 文字太长了 不适合放在一行. 打量着王五... 很好... 王五, 你怎么样? 张三 李四 王五这将产生一个流程图。:
链接 长方形 圆 圆角长方形 菱形 关于 Mermaid 语法,参考 这儿,我们依旧会支持flowchart的流程图:
Created with Raphaël 2.2.0 开始 我的操作 确认? 结束 yes no 关于 Flowchart流程图 语法,参考 这儿.如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。
如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入, 继续你的创作。
mermaid语法说明 ↩︎
注脚的解释 ↩︎