网站大量收购独家精品文档,联系QQ:2885784924

v计算机c++实例教程第9章麻将游戏.doc

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 麻将游戏 本章将要实现一个简单的四人麻将游戏的应用程序。该麻将游戏提供网络支持,可 以在局域网进行连网游戏,该麻将游戏中的四个玩家并非处于对等状态,而是其中一个 为其它三人提供服务功能;但是该麻将游戏集服务器与客户端于一体,即同一个应用程 序既可以选则做为服务器也可以选择作为客户端,而且在实现网络功能的时候,运用了 与第四章和第五章不同的技巧。该麻将游戏具有十分美观的图形界面,其运动了虚拟三 维坐标的方法,使得游戏体现出动态和立体的三维效果。 其实际效果如图 9-1 所示。 图 9-1 麻将游戏的实际效果图 ● 建立对话框应用程序框架 ● 实现非对等的网络服务功能 ● 实现传输信息的序列化 ● 建立虚拟的三维空间,体现立体效果 ● 动态绘制图形和显示位图 ● 实现在内存中创建位图和绘制图形 ● 实现麻将游戏规则 Visual C++简明教程 9.1 窗体设计 9.1.1 建立应用程序框架 该麻将游戏是基于对话框的应用程序,利用 MFC AppWizard 生成应用麻将游戏应 用程序框架,具体步骤如下: (1)执行 VC 程序,选择 FILE|New 命令,弹出 New 对话框,单击 Projects 选项卡, 选择 MFC AppWizard(exe)选项,然后在 Project Name 文本框中输入“麻将游戏”。 Location 文本框是指项目的本地路径,这里读者可以自行设定。保持 Platform 里的 Win32 复选框不变。如图 9-2 所示。 (2)单击 OK 按钮,弹出 MFC AppWizard-Step1 对话框。选择 Dialog Based 单选 按钮。如图 9-3 所示。 图9-2 New对话框 图 9-3 MFC AppWizard-Step1 对话框 (3)单击 Next 按钮,弹出 MFC AppWizard-Step2 of 6 对话框。如图 9-4 所示。 (4)单击 Next 按钮,弹出 MFC AppWizard-Step3 of 6 对话框,如图 9-5 所示。 图 9-4 MFC AppWizard-Step2 对话框 图 9-5 MFC AppWizard-Step3 对话框 (5)单击 Next 按钮,弹出 MFC AppWizard-Step4 of 6 对话框。如图 9-6 所示。 点击 Finish 按钮,创建框架。 图 9-6 MFC AppWizard-Step4 对话框 9.1.2 添加对话框资源 利用 Visual C++提供的资源编辑器,为工程添加三个对话框 IDD_OPERATION, IDD_SERVER,IDD_CLIENT,分别用于登陆操作,服务器操作 ,客户端操作。将这 三个对话框以及主程序对话框 IDD_MY_DIALOG 上的默认的 OK 和 Cancel 键删除。 将以上四个对话框的 Style 属性下拉列表设为 Popup,Border 属性下拉列表框设为 Diaolog Frame。如图 9-7 所示。 图 9-7 对话框属性的设置 利用 Visual C++提供的资源编辑器,对登陆操作对话框 IDD_OPERATION 添加两个 编辑控件 IDC_ADDRESS 和 IDC_PORT,分别用于表示服务器 IP 和端口;添加两个按 钮控件 IDC_BUTTON_SERVER 和 IDC_BUTTON_CLIENT,分别用于选择作为服务器 建立服务和选择作为客户端连接服务器。其控件 ID,类型,用途对应关系如表 9-1 所示。 表 9-1 IDD_OPERATION对话框资源清单 控件 ID 控件类型 用途 IDC_ADDRESS 编辑框 输入服务器 IP 地址 IDC_PORT 编辑框 输入服务器端口 IDC_BUTTON_SERVER 按钮控件 选择建立服务器 IDC_BUTTON_CLIENT 按钮控件 选择连接服务器 Visual C++简明教程 9.1.3 添加位图资源 该麻将游戏中需要大量的位图;比如对话框的背景,操作按钮,麻将牌等都是用位 图来充当。因此,本例中不再采用第五章所采用的将位图添加到程中的方式,而是将位 图放在工程的子文件夹中,当程序初始化时,对所有位图进行动态加载。 该麻将游戏共需要三种用途的位图:一种是放置在工程 MaJiang 子目录下的所有位 图,它们是用来充当所有的麻将牌的;一种是放置在工程 Opertion 子目录下的所有位图, 它们是用来充当所有的操作按钮的;一种是放置在工程 Picture 子目录下的所有位图, 它们是用来填充对话框背景或者用来作来游戏桌面的。具体的,请各位读者查看本书附 赠的光盘。 9.2 界面相关功能的实现 该麻将游戏做为一个娱乐的工具,自然需要十分友好和美观的界面;这主要体现

文档评论(0)

LF20190802 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档