c语言怎样制作界面,c语言游戏界面怎样制作

本文目录一览:

C语言怎么做界面?

空窗口:

#include windows.h

/* 所有的窗口输出到这里去 */

LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) {

switch(Message) {

/* 停止后,告诉主线程停止 */

case WM_DESTROY: {

PostQuitMessage(0);

break;

}

/* 所有其他消息(很多人)都使用默认程序处理 */

default:

return DefWindowProc(hwnd, Message, wParam, lParam);

}

return 0;

}

/* Win32 GUI程序的主要功能:执行从这里开始 */

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {

WNDCLASSEX wc; /* 窗口的属性结构 */

HWND hwnd; /* “句柄” 一个窗口的标识符 */

MSG Msg; /* 所有消息的临时位置 */

/* 修改结构和设置的东西 */

memset(wc,0,sizeof(wc));

wc.cbSize

= sizeof(WNDCLASSEX);

wc.lpfnWndProc

= WndProc; /* 将发送消息的地方 */

wc.hInstance

= hInstance;

wc.hCursor

= LoadCursor(NULL, IDC_ARROW);

/* 白色,COLOR_WINDOW是系统定义的颜色值,其数值是5 */

wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);

wc.lpszClassName = “WindowClass”;

wc.hIcon

= LoadIcon(NULL, IDI_APPLICATION); /* 载入一个标准图标 */

wc.hIconSm

= LoadIcon(NULL, IDI_APPLICATION); /* 使用名称“A”来作为该项目图标 */

if(!RegisterClassEx(wc)) {

MessageBox(NULL, “Window Registration Failed!”,”Error!”,MB_ICONEXCLAMATION|MB_OK);

return 0;

}

hwnd = CreateWindowEx(WS_EX_CLIENTEDGE,”WindowClass”,”Caption”,WS_VISIBLE|WS_OVERLAPPEDWINDOW,

CW_USEDEFAULT, /* x */

CW_USEDEFAULT, /* y */

640, /* 宽度 */

480, /* 高度 */

NULL,NULL,hInstance,NULL);

if(hwnd == NULL) {

MessageBox(NULL, “Window Creation Failed!”,”Error!”,MB_ICONEXCLAMATION|MB_OK);

return 0;

}

/*

所有的输入处理和发送到窗口过程。

注意,这个块代码流,直到它接收到的东西,

所以回路不会产生不合理的高CPU使用率。

*/

while(GetMessage(Msg, NULL, 0, 0) 0) /* 如果没有收到任何错误…*/

{

TranslateMessage(Msg); /* 如果存在翻译关键码字符*/

DispatchMessage(Msg); /* 发送它到WndProc */

}

return Msg.wParam;

}

C语言如何做图形界面?

C语言中要做图形见面,首先需要设置为图形模式,确定显卡类型,对屏幕进行初始化等等,相关的函数如下:

1. detectgraph() 显示卡检测函数

2. initgraph() 图形初始化函数

3. getdrivername() 获取图形驱动程序名的指针

4. getgraphmode() 获取图形模式函数

5. getmoderange()获取模式值范围函数

6. getmaxmode()获取最大显示模式函数

7. getmodename()获取显示模式名函数

8. graphdefaults()图形设置复位缺省值函数

9. setgraphmode() 设置图形模式函数

10. restorecrtmode() 恢复文本显示模式函数

11. graphresult() 图形操作结果函数

12. grpaherrormsg() 图形错误信息函数

13. setgraphbufsize()设置图形缓冲区大小函数

14. setactivepage() 设置可输出显示页函数

15. setvisualpage() 设置可见显示页数

16. closegraph()关闭图形模式函数

怎么用c语言做一个界面

用turbo

c是可以做窗口程序的,不过不会是象vb做出来的窗口那样。是dos下面的。

还可以用vc++,这个可以用c语言做出窗口程序来的。

怎样用c语言写一个图形界面

代码

#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”) ;

HWND hwnd ;

MSG msg ;

WNDCLASS wndclass ;        //声明一个窗口类对象

//以下为窗口类对象wndclass的属性

wndclass.style = CS_HREDRAW | CS_VREDRAW ;                         //窗口样式

wndclass.lpszClassName = szAppName ;                               //窗口类名

wndclass.lpszMenuName = NULL ;                                     //窗口菜单:无

wndclass.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH) ;    //窗口背景颜色

wndclass.lpfnWndProc = WndProc ;                                   //窗口处理函数

wndclass.cbWndExtra = 0 ;                                          //窗口实例扩展:无

wndclass.cbClsExtra = 0 ;                                          //窗口类扩展:无

wndclass.hInstance = hInstance ;                                   //窗口实例句柄

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,             //窗口的高度:使用缺省值

NULL,                      //父窗口:无

NULL,                      //子菜单:无

hInstance,                 //该窗口应用程序的实例句柄

NULL                       //

) ;

ShowWindow( hwnd, iCmdShow ) ;        //显示窗口

UpdateWindow( hwnd ) ;                //更新窗口

while( GetMessage( msg, NULL, 0, 0 ) )        //从消息队列中获取消息

{

TranslateMessage( msg ) ;                 //将虚拟键消息转换为字符消息

DispatchMessage( msg ) ;                  //分发到回调函数(过程函数)

}

return msg.wParam ;

}

LRESULT CALLBACK WndProc( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam )

{

HDC hdc ;                //设备环境句柄

PAINTSTRUCT ps ;         //绘制结构

RECT rect;               //矩形结构

switch( message )        //处理得到的消息

{

case WM_CREATE:          //窗口创建完成时发来的消息

MessageBox( hwnd, TEXT(“窗口已创建完成!”), TEXT(“我的窗口”), MB_OK | MB_ICONINFORMATION ) ;

return 0;

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 ) ;

return 0;

case WM_DESTROY:         //处理窗口关闭时的消息

MessageBox( hwnd, TEXT(“关闭程序!”), TEXT(“结束”), MB_OK | MB_ICONINFORMATION ) ;

PostQuitMessage( 0 ) ;

return 0;

}

return DefWindowProc( hwnd, message, wParam, lParam ) ;        //DefWindowProc处理我们自定义的消息处理函数没有处理到的消息

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/284747.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2024-12-22 15:42
下一篇 2024-12-22 15:42

相关推荐

  • 为什么不用Python开发游戏

    Python是一种高级编程语言,拥有简单易学、代码简洁等优点。同时,Python也是一种多用途的语言,可以用于Web开发、数据分析以及机器学习等领域。然而,对于游戏开发领域,Pyt…

    编程 2025-04-29
  • AES加密解密算法的C语言实现

    AES(Advanced Encryption Standard)是一种对称加密算法,可用于对数据进行加密和解密。在本篇文章中,我们将介绍C语言中如何实现AES算法,并对实现过程进…

    编程 2025-04-29
  • 学习Python对学习C语言有帮助吗?

    Python和C语言是两种非常受欢迎的编程语言,在程序开发中都扮演着非常重要的角色。那么,学习Python对学习C语言有帮助吗?答案是肯定的。在本文中,我们将从多个角度探讨Pyth…

    编程 2025-04-29
  • Python被称为胶水语言

    Python作为一种跨平台的解释性高级语言,最大的特点是被称为”胶水语言”。 一、简单易学 Python的语法简单易学,更加人性化,这使得它成为了初学者的入…

    编程 2025-04-29
  • OpenJudge答案1.6的C语言实现

    本文将从多个方面详细阐述OpenJudge答案1.6在C语言中的实现方法,帮助初学者更好地学习和理解。 一、需求概述 OpenJudge答案1.6的要求是,输入两个整数a和b,输出…

    编程 2025-04-29
  • 使用Python制作游戏代码

    Python是一种高级编程语言,因其简洁明了的代码风格、易于学习和使用而备受青睐。Python已经成为游戏制作的热门选择之一,可以通过Pygame、Panda3D等工具来实现游戏制…

    编程 2025-04-29
  • Python按位运算符和C语言

    本文将从多个方面详细阐述Python按位运算符和C语言的相关内容,并给出相应的代码示例。 一、概述 Python是一种动态的、面向对象的编程语言,其按位运算符是用于按位操作的运算符…

    编程 2025-04-29
  • 如何使用Python将print输出到界面?

    在Python中,print是最常用的调试技巧之一。在编写代码时,您可能需要在屏幕上输出一些值、字符串或结果,以便您可以更好地理解并调试代码。因此,在Python中将print输出…

    编程 2025-04-29
  • Python语言由荷兰人为中心的全能编程开发工程师

    Python语言是一种高级语言,很多编程开发工程师都喜欢使用Python语言进行开发。Python语言的创始人是荷兰人Guido van Rossum,他在1989年圣诞节期间开始…

    编程 2025-04-28
  • Python语言设计基础第2版PDF

    Python语言设计基础第2版PDF是一本介绍Python编程语言的经典教材。本篇文章将从多个方面对该教材进行详细的阐述和介绍。 一、基础知识 本教材中介绍了Python编程语言的…

    编程 2025-04-28

发表回复

登录后才能评论