电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

C#环境范文

来源:火烈鸟作者:开心麻花2025-11-191

C#环境范文(精选7篇)

C#环境 第1篇

关键词:GPS,C#,Map X,电子地图

人类社会进入了21世纪,科学技术的发展一日千里,在各门学科的脉络中,信息是很重要的因素,随着全球信息化进程的发展,各行业对信息化提出了更高的要求,对信息化的认识也从原先单纯的数字化转变为数字化和网络化以及无线化相结合。信息化是当今世界发展的大趋势,是推动经济社会变革的重要力量。因此,通过某样器件采集外部信息,并发送到后台监测设备上也成为热门的话题。

近几年来,全球定位系统的迅速发展使得移动目标实时定位成为可能,同时无线通讯技术的发展使得实时控制也迅速发展。本系统利用GPS定位技术和DTU无线传输,并利用C#实时显示接收数据,同时结合MapX在电子地图上进行实时定位。

1 总体设计

系统的总体结构如图1所示,主要由车载终端、GPRS模块、远程监控中心3个部分组成,车载终端连接的GPS模块接收信息,经GPRS网络与监控中心之间进行数据传输,监控中心接收到信息后在地图上实时显示,对移动车辆进行实时监控。

2 硬件总体设计

本系统的硬件框架如图2所示,通过GPS接收GPS卫星发射的信息,然后由单片机对信息进行解码,并将信息在LCD显示模块上显示。

为了实现车辆的实时监测,须将信息及时传递到监控中心,图2中的DTU内部所含GPRS模块能通过GPRS网络及时地将信息传递给监控中心。

3 系统软件设计

系统的软件设计包括车载终端的单片机程序设计以及监控中心的监测软件设计。车载终端单片机程序主要功能是解析GPS信息、液晶屏显示以及车载端与GPRS之间的通讯;监测中心的监测软件位于PC机上,主要功能是实现实时定位。

3.1 系统总体软件设计

系统总体软件设计流程如图3所示,车载终端主要实现GPS与单片机之间的通讯、车载端与监控中心的通讯。监测中心主要实现车辆的实时定位。本系统通过GPRS网络实现车载终端与监控中心的实时通讯,并利用MapX将接收的信息在电子地图上实时显示。

3.2 车载终端程序设计

车载端单片机流程如图4所示,终端程序釆用C语言编程实现。首先启动系统,查看整体系统是否正常,如果正常,则对系统器件进行初始化。车载终端主要包含3个模块:GPS模块、单片机模块、GPRS模块。单片机模块运行在主程序模块下,而GPS模块和GPRS模块主要以中断的方式实现。

4 系统结果展示

导航地图界面如图5所示,首先提取单片机接收到的经纬度信息,系统先记录此信息并在地图上做标注,然后每1000ms接收汽车移动的目标位置,每收到一次信息系统将做一次记录。

5 结语

文章通过C#实现了串口的数据通讯,解决了利用GPS对外部的数据采集,并利用无线传输器件GPRS DTU WG-8010对GPS的数据进行远距离传输,最后能用C#编程在后台实时显示GPS信息,并在地图上显示汽车位置。

参考文献

[1]陈赛.基于单片机的GPS船舶航迹仪的研制[D].洛阳:河南科技大学,2012.

[2]王丽欣.基于GPS/GSM的车辆定位跟踪系统的设计与实现[D].沈阳:沈阳工业大学,2013.

[3]吴绍兴,刘岩,等.C#项目开发案例导航[M].北京:电子工业出版社,2012.

[4]杜娟.基于Google Earth的车辆远程定位监测系统的设计与实现[D].南京:南京农业大学,2012.

[5]党静.基于Google Maps API的道路灾难监测系统研究与实现[D].广州:华南理工大学,2012.

C#环境 第2篇

关键词:报表编辑,EXCEL组件,C#

管理信息系统的开发工具都自带有报表制作工具, 制作的报表格式相对固定的模式。这种报表使用起来欠灵活性, 当用户要求要更改报表格式时, 系统开发人员就要相应修改程序和设计格式, 给应用软件的维护和用户工作带来极大的不便, 同时也难以满足学生收费管理系统业务的变化, 也不能满足业务要求的复杂格式的报表。开发工具也可以使用第三方提供的报表组件, 如水晶报表, 但是需要额外的费用。而目前大部分员工都是使用EXCEL制作报表, 因EXCEL可以满足用户根据自己实际情况进行调整报表的格式和样式, 用户可以自定义报表的格式, 来适应业务变化的报表变化要求。基于以上问题, 结合实践使用开发工具调用EXECL的强大的表格功能来实现报表编辑, 能得到很好的解决复杂变化的报表需求。本人在开发学生收费管理系统时是采用C#+Sql Server的B/S模式, 下面介绍C#开发环境里编程实现EXCEL报表。

1 EXCEL对象介绍

C#开发环境中调用Excel组件进行数据交互, 首先要掌握Excel组件各个对象的属性和方法的使用, Excel组件的对象包括如下:

1) Application对象, Excel对象模型的顶层, 对应Excel应用程序一个进程。在C#应用开发时, 在程序中操作Excel文件, 传输数据, 首先获得Application对象的实例。

2) Workbook对象, 对应Excel应用程序中当前打开的工作簿, 可以通过Workbooks集合或表示当前活动工作簿的Active Workbook对象访问Workbook对象。

3) Work Sheets对象, 对应工作簿中所有的工作表。可以通过Sheets集合来访问、激活、增加、更名和删除工作表。一个Worksheet实例对应一个工作表。

4) Range对象, 对应工作表的某一单元格或多个单元格, 某一选定区域等。

5) Cells对象, 对应工作表的一个单元格, 使用Cells实例对单元格的进行操作。

2 C#环境下EXCEL对象的使用方法

2.1 检查本机是否安装EXCEL

if (codeboolis Excel Installed () )

{//本机已安装Excel文件;}

else{Message Box.Show ("系统提示:当前本地操作系统没有安装office 2010", "警告", Message Box Buttons.OK, Message Box Icon.

2.2 创建EXCEL实例

Microsoft.Ofice.Interop.Excel.Application myxls//创建EXCEL对象

myxls=new Microsoft.Office.Interop.Excel.Application () if (myxls==null) Message Box.Show (EXCEL) ;

if (myxls==null) Message Box.Show (“创建EXCEL对象失败”) ;

2.3 调用预先设置好的的EXCEL报表模板

Microsoft.Office.Interop.Excel.Workbook mywb=myxls.Workbooks.Open ("模板路径")

myxls.visible=false;//设置为不可视

2.4 建立工作簿对象

Workbooks mywb=myxls.Workbooks;//建立EXCEL工作簿

2.5 EXCEL表格的单元格调用方法

workbooks.worksheets.cells (1, 1) .value="报表名称", 其中workbooks对应工作薄;worksheets对应工作表;cells (k, l) 对应工作表里的单元格; (k, l) 表示水单元格的坐标;value表示要填入的数据或公式。

2.6 EXCEL对象打开、保存、关闭、释放等方法

workbooks.save () //保存工作薄;workboods.close () //关闭工作簿

workbooks.Save Copy As (save File Dialog1.File Name) //文件另存为

worksheet=null;workbooks=null;myxls.quit () //释放EXCEL对象内存

worksheet.printout//指定的工作表打印

System.Runtime.Interop Services.Marsha1.Release Com Object (worksheet) ;//释放

2.7 EXCEL对象属性设置方法

worksheet.Name="工作计划表";//工作表重命名

worksheet.Columns.Column Width=18;//全局行宽;.Row Height=18;//全局列高

Range range= (Range) worksheet.Cells[2, 1];range.Columns.Column Width=38;//

range.Columns.Column Width=38;//设置单元格行宽

range.Columns.Row Height=38;//设置单元格列高EXCEL

以上是EXCEL对象的最基本使用方法, 其他设置方法, 如:背景、颜色、单元格合并、边框底纹, 字体字号等等, 请参考EXCEL开发帮助文档。

3 EXCEL进程异常情况处理

1) EXCEL进程意外关闭, 则要释放内存, 再重新启动EXCEL进程。

2) 管理信息系统意外关闭、那么EXCEL进程还保留在操作系统中, 再创建EXCEL进程进行数据交换, 数据会出现杂乱现象。所以每次创建的EXCEL进程, 程序出错或者程序出现异常时, 要释放EXCEL对象所占的内存, 若不释放, 管理信息系统不能正常运行。

4 C#调用EXCEL报表实现

C#利用接口将数据库中的查询数据导出到Excel报表模板文档的报表, 然后把数据报表提供给工作人员, 他们可以更改标题内容, 单元格的行高、列宽、字体、颜色、对齐等功能, 实现在EXCEL模板中自定义报表的格式, 提供更好的交互, 他们可以自己去定义数据的报表格式, 增加了报表的灵活性。。

学生收费信息系统导出的统计明细报表, 如图1, 在这个基础上, 用户可以再编辑EXCEL表格, 自定义格式, 提供再编辑的EX-CEL报表。

5 结束语

C#环境 第3篇

关键词:电子地图,C#语言,MapXtreme集成开发,MapInfo

1 引言

随着GIS (Geography Information System) 的飞速发展与广泛应用, 电子地图作为GIS核心, 逐步被人民熟悉和认知, 它是各类信息的载体和展示界面, 而在各种与地域相关的管理系统中, 越来越多的客户提出了电子地图支持的需求, 如何为系统增加电子地图支持, 就是下面要讨论的话题。

MapXtreme是美国MapInfo公司开发的一套支持Windows.NET FrameWork的Windows和Web开发的组件库, 具有强大的地图可视化功能, 广泛应用于国土、测绘、军事、GIS等相关领域, 为用户提供了先进的电子地图可视化技术, 并且提供了集成地图数据显示控制开发接口, 方便用户在其他应用程序中利用MapXtreme提供的.Net组件进行集成地图数据可视化编程开发。

2 准备工作

在Visual Studio 2008环境下, 如果要使用MapXtreme进行电子地图开发, 需要完成以下准备工作。

(1) 安装MapXtreme SDK组件包, 如图1所示。

(2) 地图数据的准备

利用MapInfo Professional, 将获得的地图数据转换为MapInfo的Tab表格式, 并对电子地图进行符号、显示样式定制, 最后生成*.mws工作空间数据, 用来在开发的系统中调用。

3 创建电子地图开发实例

实例采用C#面向对象编程语言, 主要实现步骤如下:

(1) 创建框架程序, 设计包含MapControl、MapToolBar对象的对话框, 如图2所示。

启动Visual Studio 2008, 利用C#应用程序向导创建一个基于MapXtreme6.8.0的应用程序MapXtremeWindowsApplication1, 创建过程中各选项可保留默认状态。

创建完成后, 按以下步骤设计对话框窗体:

1) 在MainForm.cs窗体上, 插入MapControl、MapToolBar和上下文关联菜单ContextMenuStrip组件, 默认命名为mapControl1、mapToolBar1和contextMenuStrip_Map, 并同时设定mapToolBar1的关联MapControl对象为mapControl1, 如图3所示。

2) 打开mapToolBar1的Buttons集合编辑器, 为mapToolBa r1定制功能按钮。本实例中设置了点选、框选、漫游、缩放、图层控制等按钮, 如图4所示。

(2) 程序编码, 实现应用程序与对话框窗体的交互。1) 为程序编码引入MapInfo命名空间

mapInfo命名空间中, 提供了各种电子地图显示控制的对象和方法。可以根据功能需要, 通过在MainForm.cs文件中原有命名空间后加入以下代码来实现MapInfo各类命名空间的引入。

2) 加载地图数据

实例采用在程序创建时自动加载地图文件的方式来打开地图, 地图文件预先置于系统目录下的MapData子目录下。

在主窗体的构造函数public MainForm () 中, 加入如下代码:

3) 设置初始鼠标状态

为了使操作尽量简便快捷, 为鼠标的地图操作作了如下设计:利用鼠标左键选取目标;利用鼠标右键拖动来实现地图漫游;利用鼠标右键点击操作弹出关联菜单;利用鼠标滚轮来控制地图的缩放。

在主窗体的构造函数public MainForm () 中, 加入如下代码, 实现鼠标左键选取和右键拖动的功能:

通过在mapControl1的MouseUp事件中加入如下代码来手动实现弹出菜单:

AllowPopmenuDisplay是弹出菜单显示标志, 在mapControl1的MouseMove事件中来判断当前是右键的点击还是拖放操作。

4) 获取地图坐标

MapControl组件不提供实时坐标显示功能, 要实现该功能需要在其MouseMove事件中加入如下代码:

在以上功能的基础上, 可以通过编码实现更多的功能。 (3) 编译并运行程序。

编译成功之后, 在C#环境下的电子地图集成开发平台就搭建好了。程序运行效果如图5所示。

4 结语

C#环境 第4篇

关键词:集成开发环境,C#语言,NotePad++

1 C#轻量级解决方案介绍

轻量级C#开发环境可分为两大类:①开源的C#集成开发环境;②在功能强大的编辑器基础上, 通过定制的方式来构建。

(1) 开源的C#集成开发环境主要有QuickSharp和SharpDevelop。QuickSharp是一个很小型的C#集成开发环境, 提供了一个代码编辑器, 主要功能有代码自动完成、语法着色、内置编译和执行, 支持ASP.NET和SQL Server、MySQL和SQLite数据库。QuickSharp 2.0仅有2.7M。

SharpDevelop是个自由的开放源代码集成开发环境, 主要用来开发支援.NET Framework的C#、VB.NET与BOO等编程语言。它可以用来作为微软Visual Studio.NET的替代品, MonoDevelop曾由此分支出来。SharpDevelop 4.0的安装包是15M。

Windows平台上较常用并且对中文支持较好的代码编辑器有Notepad++和EditPlus, 这两款编辑器都能对C、C++、C#、JAVA、Objective-C、PHP等常用编程语言等提供良好的支持。Notepad++尤为强大, 支持插件机制, 提供了良好的可扩展性。

(2) 此种方式的优点是能够在一个代码编辑环境中进行多种编程语言的开发。本文说明了构建基于NotePad++的轻量级C#开发环境的详细步骤。

2 Notepad++简介

在Windows操作系统上, 记事本 (Notepad) 常用于打开小的文本文件。记事本程序启动快, 界面简洁, 但功能有限。Notepad++在设计之初, 目标就是成为记事本的替代品。

Notepad++由台湾人侯今吾基于Scintilla文本编辑组件, 采用C++和纯Win32API和STL开发, 这保证了快速的程序运行速度和较小的文件尺寸, 2013年5月5日发布的6.3.3安装包大小仅为6.72M。Notepad++有完整的中文化接口及支持多国语言撰写的功能 (采用UTF-8技术) , 内置支持C、C++、Objective-C、Java、PHP、HTML、CSS、JavaScript等多达27种主流编程语言语法高亮度显示、语法折叠, 十分适合用作撰写电脑程序的编辑器。Notepad++支持宏以及扩充基本功能的插件。

3 C#语言编译器使用

.NET框架 (.NET Framework) 由微软开发, 是一个致力于敏捷软件开发 (Agile software development) 、快速应用开发 (Rapid application development) 、平台无关性和网络透明化的软件开发平台。.NET框架是以一种采用系统虚拟机运行的编程平台, 以通用语言运行库 (Common Language Runtime) 为基础, 支持多种语言 (C#、VB.NET、C++、Python等) 的开发。运行C#程序, 首先需要安装.NET Framework, 类似于JAVA开发环境中的JDK (Java Development Kit, JAVA开发工具包) 。

C#编译器C Sharp Compiler (简称CSC) , 文件名为csc.exe, 通常位于C:windowsMicrosoft.NETframework、如果安装了多个.NET framework版本, 在此文件夹下会存在多个版本。本文环境使用的是WindowsXP操作系统, .NET 3.5版本, csc.exe位于目录C:windowsMicrosoft.NETFrameworkv3.5。

csc.exe编译的常用参数如下:/out指定输出文件;/target指定输出文件使用5个选项之一:appcontainerexe、exe、library、module、winexe。

4 NotePad++插件安装和配置

Notepad++从3.4版本开始支持插件, 让用户选择的为本身已经很优秀的Notepad++, 添加更多强大的功能。要使Notepad++较好地支持C#的开发, 需要安装两个插件:UniversalIndentGUI和NppExec。UniversalIndentGUI插件支持绝大多数编程语言进行代码格式化;NppExec支持调用关联的编译器来编译代码。

Notepad++插件的安装非常简单, 从主菜单中选择“插件->Plugin Manager->Show Plugin Manager”, 从可用的插件中选中所需安装的插件, 再点击按钮“Install”, 即完成了插件的安装。

从主菜单中选择“插件->NppExec->Execute”, 或者单击快捷键F6, 在弹出来的命令窗口中填写如下命令:

点击“Save”按钮, 脚本名字命名为C#Console。

第1行是清空Console窗口, 第2行是进入当前目录, 第3行是保存当前文件, 第4行是编译当前程序, 第5行是运行程序。

Notepad++定义了如表1所示的环境变量, 可以作为参数传递给外部工具。

如果程序Hello.cs中存在错误, 编译后会产生如下的输出:

Hello.cs (8, 44) :error CS1002:;expected

为了实现错误定位, 还需要配置输出。从主菜单中选择“插件->NppExec->Console Output Filters”, 或者单击快捷键Shift+F6, 选择Highlight, 填入“%FILE% (%LINE%”, 将Red的值从原来的00改为ff, 错误信息会显示为红色。配置过程如图1所示。

%FILE%和Hello.cs匹配, %LINE%和数字8匹配, 这样编辑器就会定位到第8行, 也就是错误所在的位置。

5 开发环境测试

下面以计算两个整数之和的程序为例对环境进行简单测试。

创建一个新文件, 将下面的代码复制到编辑窗口, 保存文件名为P1000.cs。

使用快捷键F6, 脚本选择C#Console, 然后点击“OK”按钮。在终端窗口中, 输入3、4, 回车确认, 就能看到程序输出了正确的结果7。在程序中添加人为错误, 再次运行, 发现终端窗口中会产生红色的出错信息, 点击后, 程序窗口中的光标停留在了相应的位置。

6 结语

本文说明了基于Notepad+来创建轻量级C#开发环境的步骤。该环境支持代码高亮显示、代码格式化、程序的编译和运行、错误定位, 能够满足程序开发的基本需求。整个开发环境软件包小、安装方便、启动快速、界面简洁, 非常适合C#语言的初学者和只想编写小段C#代码的用户使用。

参考文献

[1]沃森, 内格尔.C#入门经典[M].第5版.北京:清华大学出版社, 2010.

[2]Quicksharp[EB/OL].http://texteditors.org/cgi-bin/wiki.pl?QuickSharp.

[3]维基百科.SharpDevelop[EB/OL].http://zh.wikipedia.org/zhcn/SharpDevelop.

C#实现窗口自动隐藏 第5篇

关键词:C#,窗体,隐藏

1 C#简介

C#是由微软公司所开发的一种面向对象的、运行于.NET Framework之上的高级程序设计语言,目前有比较广泛的应用。

2 窗口自动隐藏

现实中有这样的程序设计需要,程序窗体在靠近屏幕边的时候,希望窗口能自动隐藏,仅显示很小的一条边,当鼠标指向这条边的时候,窗体会自动弹出。

3 现实情况和设计目的

很多应用程序已经实现了这个功能,例如大家熟悉的QQ窗口或者一些考试软件都使用了这种窗体功能,但相关的介绍文章不多,这里用一种方式将其实现,供初学者和有实际需要者参考。

4 实现方法和过程

窗体自动隐藏在窗体靠屏幕的上、左、右边时都可以实现,为叙述简单起见,下面仅以向靠上边时隐藏为例来说明。

4.1 窗体初始设置

加入一个panel控件,设置它靠在窗体的上边,高度很窄,可以与窗体隐藏后的高度一样大,当然不一样大也可,将其enable属性设为false。

4.2 窗体自动隐藏

使用窗体的MouseLeave事件,当事件发生后,用窗体的location属性判断窗体是否靠边,即判断location的Y值是否小于一个比较小的值,比如5。若是,则记录窗体的高度和窗体FormBorderStyle属性(一会恢复时用),将窗体FormBorderStyle属性设为none,再把窗体height属性设为一个比较小的值,比如5,窗体即可以变成高只有5像素的一个小条,达到隐藏效果,再把panel控件的enable属性设为true,以使其能接收事件。

4.3 窗体自动弹出

鼠标指向隐藏中的窗体,窗体会恢复成隐藏前的状态。但这个功能不能用窗体的MouseEnter事件来做,这样做会产生一个MouseLeave事件和MouseEnter事件的循环发生。解决的办法是在窗体中加入panel控件,窗体隐藏成一小条后,按前面的设置,在窗体上显示的就是panel控件,它可以接收事件,鼠标指向隐藏后的窗体,就是指向panel控件。Panel的MouseEnter事件发生后,恢复窗体高度和FormBorderStyle属性,为避免麻烦,将panel的enable属性设为false。

5 部分源代码

5.1 窗体隐藏

5.2 恢复

参考文献

C#控件数组实现扫雷游戏 第6篇

扫雷游戏主区域由很多个方块组成。游戏开始时, 系统会随机在若干方块中布下地雷。使用鼠标左键随机点击一个方块, 方块即被打开并显示出方块中的数字; 方块中数字则表示其周围的8个方块中有多少雷; 如果点开的方块为空白块 (0), 即其周围有0颗雷 , 则其周围方块自动打开 ; 如果其周围还有空白块 (0), 则会引发连锁反应。如果方块下有雷, 点击右键即可标记有雷 (插上红旗); 如果再次右键点击该方块则取消标记。在游戏中, 雷区方块的上方左侧计数器标签显示剩余的雷数, 右侧显示所花费的时间, 中间笑脸按钮开始新游戏。当用户点开所有无雷方块, 并把有雷的方块作上标记, 则游戏成功。如果点击有雷方块则失败。其程序运行界面如图1所示。

2 游戏设计思路

游戏主区域使用了一个二维按钮控件数组Mines [,], 每个按钮元素代表一个方块, 按钮元素的Tag属性保存1为有雷, 否则无雷; Text属性保存其周围的8个方格有雷的个数。Turn [,] 二维数组保存方块状态, 其值为1表示这个位置插上红旗 ; 0表示这个位置没有翻开。

游戏中处理共享鼠标事件的处理方法是bt_MouseUp (), 其中首先通过sender对象 (代表产生单击事件的按钮控件) 获取按钮的Name属性, 通过按钮Name属性可以计算出x,y坐标, 从而判断二维按钮控件数组Mines [,] 中是哪个Button被点击。然后通过e.Button判断出是左键还是右键点击。

3 关键技术

游戏主区域由很多个方块组成, 这些方块可以由按钮控件数组实现。也可以采用类似实现计算器中的数字按钮控件数组的方法实现。 为编程方便此处采用二维按钮控件数组。

3.1 动态添加雷块按钮控件

用new来建立Button控件, 同时通过赋值把控件加到动态的二维按钮数组Mines。通过代码设置好控件大小、位置等属性, 然后用Form1.Controls.Add方法来添加到窗体上自身的控件数组Controls中。因为窗体里的控件都要被包括在Controls里面:

利用.NET中提供的System.MouseEventHandler动态关联按钮控件MouseUp事件与处理程序。

Mines [x, y].MouseUp += new MouseEventHandler (bt_MouseUp);

通过System.MouseEventHandler将方法bt_MouseUp作为Mines [x, y] 的MouseUp事件代码。

3.2 无雷方块拓展 (对于周围无雷的空白块)

对于无雷方块拓展, 首先判断该方块是否为空白块 (其相邻的8个方块都不是雷块), 如果是则向这相邻的8个方块进行递归拓展, 直到不可拓展为止:

4 游戏设计步骤

4.1 游戏窗体 (Form1.cs)

创建新Windows应用程序项目, 在Windows窗体上添加1个Panel控件Panel1, 1个标签lblMine (显示剩余的雷数), lblTime (显示所花费的时间 )。其余方块按钮均可在运行时自动建立。1个定时器控件其Interval属性设为1000 (1秒)。

4.2 程序代码

窗体类定义成员变量:

窗体加载Load的事件实现动态加载按钮控件, 并初始化按钮大小、位置:

GameInit ( ) 初始化Mines按钮控件 数组 , 并且调用LayMines () 实现游戏开始时随机布雷功能:

GetAroundNum (int row,int col) 获取某个小方块区域相邻8个区域的雷个数:

添加按钮控件MouseUp事件与处理方法bt_MouseUp代码:

开始“笑脸”按钮和定时器的事件代码。

5 结语

C#语言开发贪吃蛇游戏 第7篇

贪吃蛇游戏是一种大家较为熟悉的游戏, 通过控制贪吃蛇的移动方向吃掉食物, 而避免蛇头碰到蛇身和背景边界, 如图1所示。

2 设计思路

利用C#语言开发了贪吃蛇游戏, 如图1所示, 设计中借鉴了MVC的设计思路, 除了窗口界面类外设计了3个类。

一是模型类 (Snake Mode) , 功能为实现模型的构造 (Snake Mode () ) , 获取贪吃蛇移动后的蛇头位置 (Point Snake Move (int n) ) , 生成食物 (Product Food () ) , 吃掉食物 (Eat Food () ) 。

二是游戏规则类 (Rule) , 功能为判断蛇头有无碰到蛇身和背景边界 (bool Move Rule (Point Game P) ) 。

三是画图类 (Draw) , 功能为绘制贪吃蛇 (Draw Snake () ) , 绘制食物 (Draw Food () ) , 重绘贪吃蛇 (Draw Snake Move (Point mp) ) , 绘制游戏场景 (Draw Background () ) , 清空游戏背景 (Background Clear () ) 。

该方法通过模型、控制、视图相分离, 使程序流程更加清晰, 并且具有强内聚、松耦合特性, 使功能扩展更加方便。该方法对于开发GDI+游戏有很好的借鉴作用。

3 实现代码

3.1 窗口界面类

3.2 Snake Mode类

3.3 Rule类

3.4 Draw类

4 结语

利用C#开发贪吃蛇游戏, 借鉴了MVC的设计模式, 通过建立模型类、游戏规则类和画图类, 使程序流程更加清晰, 并且程序具有强内聚、松耦合特性, 使功能扩展更加方便。该方法对于开发类似的GDI+游戏有很好的借鉴作用。

摘要:介绍利用C#语言开发贪吃蛇游戏的设计方法和代码实现, 对开发类似的GDI+游戏有很好的借鉴作用。

C#环境范文

C#环境范文(精选7篇)C#环境 第1篇关键词:GPS,C#,Map X,电子地图人类社会进入了21世纪,科学技术的发展一日千里,在各门学科的脉络中,信...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部