WINDOWS是用c语言编写小游戏的吗

C语言实现Windows窗体_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
C语言实现Windows窗体
上传于||文档简介
&&C语言实现Windows窗体
你可能喜欢2005年11月 C++ Builder大版内专家分月排行榜第三
2005年11月 C++ Builder大版内专家分月排行榜第三
2005年11月 C++ Builder大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。Posts - 90,
Articles - 0,
Comments - 517
求真、务实。
18:43 by wid, ... 阅读,
创建属于自己的窗口
==================
&创建窗口前的准备
在创建窗口前我们先来熟悉几个名词,&这些名词现在可以暂时不去透彻的进行理解,&只需要印象中知道有这么回事就行。
  "窗口"这个我们都已经十分熟悉了,&在Windows中,&一个应用程序窗口上一般会在标题栏上显示程序的名称,&紧挨着标题栏的菜单栏,&或许还会有状态栏、滚动条等其他"装饰品"。
  在一些应用程序中,&我们经常可以在程序的界面上(窗口)看到一些按钮(Push&Button)、文本框(Text&Box)、列表框(List&Box)、滚动条(Scroll&Bar)等,&这些对象通常被称为控件,&在《Windows程序设计》一书中,&还被称为"子窗口"、"控件窗口"或"子窗口控件"。
3&.&窗口类
  在建立一个窗口前,&我们必须首先注册一个"窗口类"(Windows&Class),&接触过面向对象的朋友应该会首先想到面向对象当中的"类",&但是,&这里"窗口类"中的"类"并不是指面向对象当中的那个"类"。
  在这里我们可以把"窗口类"理解为一个结构体,&结构体的成员就是窗口的一些属性,&例如窗口的标题是什么、窗口使用什么样的小图标以及窗口的风格之类的属性,&一个窗口就是一个结构体的对象,&结构体成员的属性决定着窗口的属性。
4&.&消息循环
  在Windows程序设计中,&消息循环是个不得不提的概念,&Windows操作系统是以消息驱动的,&消息队列是指在一个应用程序运行时,&Windows操作系统会为该应用程序建立一个"消息队列",&这个消息队列用来存放该程序可能创建的各种窗口的消息,&当用户对应用程序进行操作时,&例如点击一个按钮、调整下窗口的大小等,&此时Windows会立即把这一消息告诉应用程序,&使应用程序能作出相应的动作。
  笔者觉得有比较强调一下上一段中的最后一句"此时Windows会立即把这一消息告诉应用程序,&使应用程序能作出相应的动作。",&我们在创建一个应用程序时,&不用想着什么时候才能从用户那得到指令,&因为操作系统会即时告诉我们用户此时是否对程序进行了操作,&对于没有接触过Windows编程的朋友们这点可能有点难以理解,&简单来说就是像如何获取一个按钮是否被单击,&或者如何获取用户此时是否在调整窗口大小之类的代码Windows已经帮我们完成了,&我们只需要等待着Windows给我们发消息就行,&如何判断消息类型以及处理这些消息,&在代码上通常我们用while配合一个巨大的switch来完成,。
5&.&窗口的过程函数
  当一个窗口建立之后,&就可以从Windows那里不断的接收到Windows发来的消息,&接收到消息后我们就需要一个函数来处理这些消息,&可以简单的理解为,&这个用来处理接收到的消息的函数就称为窗口过程函数或者回调函数。
下面我们来尝试着看一个创建一个基本窗口的代码。
&尝试创建自己的窗口
#include &windows.h&
LRESULT CALLBACK WndProc( HWND, UINT, WPARAM, LPARAM ) ;
//声明用来处理消息的函数
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow )
static TCHAR szAppName[] = TEXT("MyWindow") ;
//声明一个窗口类对象
//以下为窗口类对象wndclass的属性
wndclass.style = CS_HREDRAW | CS_VREDRAW ;
//窗口样式
wndclass.lpszClassName = szAppN
//窗口类名
wndclass.lpszMenuName = NULL ;
//窗口菜单:无
wndclass.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH) ;
//窗口背景颜色
wndclass.lpfnWndProc = WndP
//窗口处理函数
wndclass.cbWndExtra = 0 ;
//窗口实例扩展:无
wndclass.cbClsExtra = 0 ;
//窗口类扩展:无
wndclass.hInstance = hI
//窗口实例句柄
wndclass.hIcon = LoadIcon( NULL, IDI_APPLICATION ) ;
//窗口最小化图标:使用缺省图标
wndclass.hCursor = LoadCursor( NULL, IDC_ARROW ) ;
//窗口采用箭头光标
if( !RegisterClass( &wndclass ) )
//注册窗口类, 如果注册失败弹出错误提示
MessageBox( NULL, TEXT("窗口注册失败!"), TEXT("错误"), MB_OK | MB_ICONERROR ) ;
return 0 ;
hwnd = CreateWindow(
//创建窗口
szAppName,
//窗口类名
TEXT("我的窗口"),
//窗口标题
WS_OVERLAPPEDWINDOW,
//窗口的风格
CW_USEDEFAULT,
//窗口初始显示位置x:使用缺省值
CW_USEDEFAULT,
//窗口初始显示位置y:使用缺省值
CW_USEDEFAULT,
//窗口的宽度:使用缺省值
CW_USEDEFAULT,
//窗口的高度:使用缺省值
//父窗口:无
//子菜单:无
hInstance,
//该窗口应用程序的实例句柄
ShowWindow( hwnd, iCmdShow ) ;
//显示窗口
UpdateWindow( hwnd ) ;
//更新窗口
while( GetMessage( &msg, NULL, 0, 0 ) )
//从消息队列中获取消息
TranslateMessage( &msg ) ;
//将虚拟键消息转换为字符消息
DispatchMessage( &msg ) ;
//分发到回调函数(过程函数)
return msg.wP
LRESULT CALLBACK WndProc( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam )
//设备环境句柄
PAINTSTRUCT
//绘制结构
//矩形结构
switch( message )
//处理得到的消息
case WM_CREATE:
//窗口创建完成时发来的消息
MessageBox( hwnd, TEXT("窗口已创建完成!"), TEXT("我的窗口"), MB_OK | MB_ICONINFORMATION ) ;
case WM_PAINT:
//处理窗口区域无效时发来的消息
hdc = BeginPaint( hwnd, &ps ) ;
GetClientRect( hwnd, &rect ) ;
DrawText( hdc, TEXT( "Hello, 这是我自己的窗口!" ), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER ) ;
EndPaint( hwnd, &ps ) ;
return 0 ;
case WM_LBUTTONDOWN:
//处理鼠标左键被按下的消息
MessageBox( hwnd, TEXT("鼠标左键被按下。"), TEXT("单击"), MB_OK | MB_ICONINFORMATION ) ;
case WM_DESTROY:
//处理窗口关闭时的消息
MessageBox( hwnd, TEXT("关闭程序!"), TEXT("结束"), MB_OK | MB_ICONINFORMATION ) ;
PostQuitMessage( 0 ) ;
return DefWindowProc( hwnd, message, wParam, lParam ) ;
//DefWindowProc处理我们自定义的消息处理函数没有处理到的消息
--------------------
--------------------
  先简单介绍这段代码,&在主函数WinMain中的窗口类对象wndclass我们定义了窗口的相关属性, 尝试注册窗口类并调用CreateWindow创建窗口, 创建完成后用ShowWindow让窗口显示出来, 我们还使用了个while用来从消息队列里获取并分发消息给程序,&我们还定义了一个过程函数WndProc用来处理系统发来的消息。
  编译运行后,&如果没有错误将首先看到一个窗口建立成功与否的对话框,&当创建窗口失败时弹出一个错误对话框并关闭程序。
  当窗口被创建时首先Windows会发给我们一条创建完成的消息"WM_CREATE",&在我们的消息处理函数WinProc中有switch-case语句对该消息进行了处理,&就是弹出一个窗口创建完成的对话框。
  同样,&我们还处理了当窗口的客户区(内容部分)被改变时发来的的"WM_PAINT"消息进行了处理,&让"Hello,&这是我创建的窗口!"始终显示在窗口中心。
"WM_LBUTTONDOWN"消息是当用户在客户区按下鼠标左键时发来的消息,&我们作出相应的动作为弹出一个鼠标左键被按下的对话框。
当用户点击窗口的关闭按钮时,&"WM_DESTROY"消息就会发来,&我们作出的动作是弹出"关闭程序!"的对话框并且退出程序。
今天的学习先到这里,&明天我们详细学习下整个创建窗口的代码。等级:简体中文企业版234M简体推荐理由:Visual C++是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C++1.0后,随着其新版本的不断问世,Visual C++已成为专业程序员进行软件开发的首选工具版本:
等级:v1.9.1中文版3.4M简体推荐理由:win tc1.91是一个c语言编译器安装程序,我用了以后感觉蛮好的,win tc以其简单方便的可操作性,无疑称得上是一个非常完美的工具版本:
等级:v3.0中文版4.1M简体推荐理由:“TurboC/C++v3.0中文版”是为了照顾不熟悉DOS环境软件操作的广大初学者,让大家能在Windows环境下方便地安装和使用中文TurboC/C++3.0,对界面进行了汉化版本:
等级:v5.10.0中文版(32位&64位)310.7M多国语言[中文]推荐理由:Dev-C++ 是一个C++ 开发工具。它包括多页面窗口、工程编辑器,在工程编辑器中集合了编辑器、编译器、连接程序和执行程序版本:
等级:v3.0.2绿色版10.4M英文推荐理由:CMake是一个免费的多平台编译工具,旨在构建、测试和软件打包。CMake是用于控制软件使用简单的平台和编译器编译过程独立配置文件。CMake生成本机makefile和工作区,可以使用您所选择的编译器环境版本:
等级:v5.0中文汉化版14.1M简体推荐理由:C-Free是一款支持多种编译器的专业化C/C++集成开发环境(IDE)。利用本软件,使用者可以轻松地编辑、编译、连接、运行、调试C/C++程序。C-Free 4 较之前的版本有巨大改进版本:
等级:v10.05汉化版22.1M简体推荐理由:Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境版本:
等级:v5.1642.0M英文推荐理由:MinGW是Minimalist GNU on Windows的简称,是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,允许你生成本地的Windows程序而不需要第三方C运行库版本:
等级:V8.0.69正式版7.7M简体推荐理由:Vim是一个超级超级强大的文本编辑器。我使用vim时间也不长,只会一些简单的命令。平常写东西,看文档都是用vim版本:
等级:v10.0.0中文版38M多国语言[中文]推荐理由:CodeLite中文版是一款免费的开源C++跨平台开发环境,软件官方原版是英文版,通过安装内附的codelite中文语言包实现汉化,强大的开源、跨平台C/C++整合开发环境,采用跨平台的wxWidgets来作为GUI界面图形库,集成了cscope, tags和sqlite,体积不大,对系统的要求也不高。版本:
等级:v3.5.2.3502官方版56.7M英文推荐理由:ActivePython是ActiveState软件公司发布的二进制Python执行版本,ActiveState包含了一个完整的Python内核,直接就是调用Python官方的开源内核,还有就是Python编程需要用到的IDE,并附加了一些Python的 Windows扩展,同时还提供了全部的访问Windows APIs的服务。版本:
等级:v5.24.0.2401官方版19M英文推荐理由:ActivePerl是一款可以执行Perl程序的软件。其包含了包括有 Perl for Win32、Perl for ISAPI、PerlScript、Perl Package Manager四套开发工具程序,可以让你编写出适用于unix,windows,linux系统的CGI程序。版本:
等级:v10.135中文免费版7.8M简体推荐理由:一鹤快手(AAuto Studio)是一鹤软件推出的AAuto语言开发工具,现更名为aadio,AAuto语言以LAs cript脚本语言为基础并基于更为通用的C系语法打造的新一代编程语言。
等级:v3.6.0官方版29.7M英文推荐理由:Python for windows 64位,Python64位安装包,Python是一种面向对象、直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行。目前,基于这种语言的相关技术正在飞速的发展,用户数量急剧扩大,相关的资源非常多。版本:
等级:V3.6.0官方版28.8M英文推荐理由:Python是一门跨平台的脚本语言,Python规定了一个Python语法规则,实现了Python语法的解释程序就成为了Python的解释器,我们用的比较多的是C版本的Python,也就是使用C语言实现的Python解释器,除此之外还有使用Java实现的Jython和使用版本:
等级:v1.0免费版1.6M简体推荐理由:华捷汇编助手是专为汇编学习和开发人员推出的一款辅助工具。该软件收集了常用的汇编命令和说明,并可以自己删除和添加。版本:
等级:v1.0.0官方版57.8M英文推荐理由:Hyper在如今是很多的编程的人员都是需要使用到的一款JS / HTML/ CSS 终端工具,软件本身的体积是比较小的,但是功能还是非常的多的,同时最新的1.0.0的版本正式以及发布了,需要的就可以来看看版本:
等级:v16.10.16.0官方版39.2M简体推荐理由:机明自动编程试用版是一款专业的Powermill自动编程软件,机明软件通过对PM深入的二次开发,使编程操作从传统手工操作的繁杂模式脱离出来,在一个版面就能设置出编程人员想要的程序,版面简洁易懂版本:
等级:v2.7绿色版1.1M简体推荐理由:轻松汇编是一个汇编语言集成开发环境,主要面向汇编语言初学者,也可以进行开发是一款非常不错的工具,有需求的朋友快来下载试试吧版本:
等级:v1.0免费版5.0M简体推荐理由:紫魁编程助手是一款小巧实用的编程软件,软件拥有窗口探测,post调试,json处理,编码转换等功能,主要是提供给易语言编程、c语言这些学习者和工作者来使用的版本:
等级:v1.29官方版14.3M多国语言[中文]推荐理由:Geany是一个使用GTK2工具包开发的快速和轻巧的集成开发环境(IDE),具有语法高亮显示,代码折叠,代码自动补完等功能,非常适合开发者使用,有需要的赶快下载吧!版本:
等级:v2.0.25中文版27.4M简体推荐理由:Scratchbot_v2.0.25创客工厂完美中文版,汉化更加完整,软件支持鼠标双击直接打开sb2文件,本版本对外接硬件支持更好。内置摇杆、距离显示器、声音温度监测、超声波测距小车、音乐演奏及聊天示例程序版本:
等级:v4.5官方版136M简体推荐理由:itestin云测试工具是免费为移动应用开发者提供自动化测试的工具。它覆盖android和ios两大设备平台,为移动应用开发者提供安全的黑盒测试环境版本:
等级:v6.2免费版16.7M简体推荐理由:tc简单程序开发工具是国内首款免费多线程的图形界面脚本制作开发工具软件,支持中英文双语言编写脚本程序,可以说TC开脚本界先河 ,是免费脚本开发制作工具的首选版本:
等级:1.3.25绿色版14.5M英文推荐理由:CudaText(代码文本编辑器)能够用来编辑代码及文本,内置的代码高亮功能非常适合编辑程序代码,绝大部分编程语言代码都可以高亮显示,支持代码折叠、拆分视图及正则表达式查找、替换。赶快下载吧!版本:
等级:微软正式版3.61G多国语言[中文]推荐理由:微软官方推出了最新的开发工具Visual Studio 2015正式版,作为Windows平台最流行的集成开发环境,Visual Studio 2015强大功能再次升级,可用于构建功能强大、性能出众的应用程序版本:WIN-TC(C语言编程软件)2.0.0 中文免费版-东坡下载
东坡下载:内容最丰富最安全的下载站!
→ WIN-TC(C语言编程软件) 2.0.0 中文免费版
Win-TC的体积比较小,界面也蛮好看的,唯一遗憾的就是编程中不能输入汉字。
C语言编程软件非常多,最常见的也是最好用的C语言编程软件编程软件就今天本站小编为您介绍的win-tc汉语版,他是一个绿色的版本,并且纯中文的,对初学者来说是个不错的选择。本C语言编程软件集成了运行工具箱,你可以方便的直接调用已经编写好的常用代码,让你提高工作效率。如果你是第一次使用编译器,那么下面的内容一定要看。如果你已经使用过一们或者多个编译器,那么该主题内容可以忽略。假定你是从未接触过编程的人,请按照下面的步骤操作,它将一步一步带领你编译出你的第一个C程序。安装TC后,在开始菜单的程序组里面将生成WIN-TC的程序组,点击WIN-TC的图标。你将看到以下的软件运行画面:如果你的系统是WIN2000或WIN XP的话,将会先看到一个操作系统警告的对话框提示你以后的程序需要按照提示那样在结尾加上getch()来暂停观看一下屏幕输出结果。WIN-TC默认打开的文件是WIN-TC安装目录下的noname.exe,就是你现在看到的内容,如果你用过WINDOWS附件的记事本的话,这个很容易理解。接下来就要编译你的noname.c了,为什么需要编译呢?只有通过编译,你的代码才能变成能够高效运行的软件。对于TC来说,就是你的C文件同名的。那么请找到下面两个按钮:上面左边一个是编译链接按钮,右边一个是编译链接并运行按钮。他们都可以编译你的代码,所不同的是,编译链接并运行按钮还可以在编译后立即运行你的程序来检验是否是你所期望的结果。现在按编译链接并运行按钮,看到以下的结果:编译成功的结果是令人兴奋的,因为编译成功的结果意味着你编写的代码没有错误并生成了EXE文件。反之,将出现编译失败的信息,提示你修改你的源代码。点击“确定”的按钮后,如果是编译成功,将立即运行编译后的软件来检验运行结果。你将看到下面的内容:看到了没?那就是noname.c里面代码的运行结果:显示一行&Hello ,world&的字。能够成功运行了,也就意味着相应的EXE文件已经成功生成了。你可以在WIN-TC安装目录的project文件夹里,找到生成的EXE文件。你或许会问为什么对应的EXE文件是在project文件夹里而不是在其它文件夹呢?因为你编译的noname.c文件在此目录,因为编译后的obj和exe文件都是在同级目录生成的,因此也在此目录了。如下:再附带说一句:在非WIN98系统下obj和exe文件的图标会和上面有所不同,请不要见怪。1.在WINDOWS下编辑TC代码,可以充分利用WINDOWS的支持剪贴版和中文的特点2.Include和Lib路径自动定位,告别TC设置路径的历史3.编译错误捕捉功能,编译时不会出现烦人的DOS窗口4.支持C内嵌汇编从而实现C/ASM混合编程5.支持C扩展库(自定义LIB库)6.错误警告定位功能、出现编译错误时双击输出框里的出错行信息可以自动寻找到错误的行,就像DOS的TC那样7.支持语法加亮功能,并可以自定义设置8.没有目录路径限制,你甚至可以安装到带有空格的路径文件夹里9.允许自定义设置输入风格,能够实现VC类似的输入风格10.可选择是否生成ASM、MAP或,你甚至可以指定只生成EXE文件11.稳定的文件操作功能,支持历史记录列表和使用模板12.撤消和重复功能,并可以按照自己内存情况设置最多撤消次数(最多允许999次)13.具有行标计数的功能,并可以设置样式
安卓官方手机版
IOS官方手机版
WIN-TC(C语言编程软件)截图
C语言编程软件下载c++编译器
语言是计算机语言的基础语言,学会了语言,再去学习其它的语言就要简单的多了那么随着想学习语言的人越来越多了,如何学习语言,学习语言要用到那些软件都是新手比较关心的问题了今天本站给大家准备了一些语言编程相...
中文 / 453.3MVC++.6.0.with.SP6小编亲自安装,
中文 / 173KB如果你是一个vc程序员,一定知道
中文 / 557KBvc++全名Microsoft Visual C++,
中文 / 28.4M不知道有没有朋友是喜欢在手机上
中文 / 109M在写《嗨翻C语言》之前,David写
英文 / 4.0M经典的C语言编程开发工具,小巧实
编译器是现在学习以及需要编程的朋友都是离不开一款不错的编译器的,那么你想知道现在最好使用的编译器是哪些以及适合编译器的都是哪些软件吗下面是小编精心的给有需要使用到编译器的朋友挑选的一些网络上评价比较好...
中文 / 453.3MVC++.6.0.with.SP6小编亲自安装,
中文 / 174MEclipse是一个基于Java的可扩展开
中文 / 275.0Meclipse
中文 / 28.4M不知道有没有朋友是喜欢在手机上
中文 / 16.3M不知道有没有朋友是在学习C语音的
中文 / 3.2MTurbo C 是美国Borland 公司的产
WIN-TC(C语言编程软件) 2.0.0 中文免费版
本类最新软件
本类软件推荐
7.7M / 01-07 / 4.4
多国语言免费版
94.7M / 02-03 / 中文正式版
8.1M / 02-03 / v1.03
51.7M / 03-10 /
182M / 01-16 / Build 8.1 中文注册安装版(附序列号)
本类软件排行
装机必备软件
编程编译数据设计
请简要描述您遇到的错误,我们将尽快予以修正。
轮坛转帖HTML方式
轮坛转帖UBB方式

我要回帖

更多关于 c语言编写简单计算器 的文章

 

随机推荐