1. 用c语言怎么创建一个窗口
通过调用API来创建窗口:
#include<windows.h>
int main()
{
MessageBox(NULL,"Hello World!","C图形程序",MB_OK);
return 0;
}
linux下通过调用图形库来创建窗口。
2. C语言如何创建窗口
windows下通过调用API来创建窗口:
#include<windows.h>
int main()
{
MessageBox(NULL,"Hello World!","C图形程序",MB_OK);
return 0;
}
linux下通过调用图形库来创建窗口。
楼主如果是学C的话,先不要急于搞这些东西,把基础打扎实才是最重要的,GUI可以后学。基础扎实了,这些只是很简单的东西。
3. 如何用C语言编写一个简单的程序!
上了大学有很多同学都在学习C语言,C++就是C语言的一种,那么怎么用c语言写一个简单的程序hello world呢,下边来给大家演示一下
工具/材料
电脑,c语言软件
- 01
鼠标左键双击c语言软件,打开,打开后界面如图,点击关闭即可
- 02
点击上方程序窗口左上角的文件,选择新建
- 03
在打开的窗口中选择文件,下边一般是第四个 c++Source file,输入文件名(hellw.c),一定要以“.c”为后缀结尾
- 04
进入编辑页面在,页面编辑源代码就可以
#include<stdio.h>
void main()
{
printf("hello world!" );
}
然后选择保存,打印,输出运行。 - 05
输出的效果就是这样了,一个简单的c语言程序就写好了
特别提示
所有的输入都要在英文半角的情况下输入,不然程序会不能识别,会报错。
4. 怎么用C语言编写一个windows窗口
调用window库窗口函数即可创建windows窗口。
必须使用windows的编译器,如VC,MS等等。
RegisterClassEx函数:
该函数注册在随后调用CreateWindow函数和CreateWindowEx函数中使用的窗口类。 RegisterClass函数己经由函数RegisterClassEx函数来代替,但是,如果不需要设置类的小目标则仍然可以使用RegisterClass函数。
CreateWindowEx函数:
该函数创建一个具有扩展风格的层叠式窗口、弹出式窗口或子窗口,其他与CreateWindow函数相同。关于创建窗口和其他参数的内容,请参看CreateWindow。具体仍可见微软的msdn。
消息处理函数WindowProc:
该函数是一个应用程序定义的函数。它处理发送给窗口的消息。WINDPROC类型定义了一个指向该回调函数的指针。WindowProc是用于应用程序定义函数的占位符。
函数原型:
LRESULT CALLBACK WindowProc (HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam);
参数:
hwnd:指向窗口的句柄。
uMsg:指定消息类型。
wParam:指定其余的、消息特定的信息。该参数的内容与UMsg参数值有关。
IParam:指定其余的、消息特定的信息。该参数的内容与uMsg参数值有关。
返回值:返回值就是消息处理结果,它与发送的消息有关。
一个简单的Window的代码如下:#include<Windows.h>
#include<tchar.h>
LRESULTWINAPIWinProc(HWNDhWnd,UINTMsg,WPARAMwParam,LPARAMlParam);
intWinMain(
__inHINSTANCEhInstance,
__in_optHINSTANCEhPrevInstance,
__inLPSTRlpCmdLine,
__inintnShowCmd
)
{
TCHAR*szName=_T("myWindow");
WNDCLASSEXwc={0};
HWNDhWnd=NULL;
MSGMsg={0};
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.cbSize=sizeof(WNDCLASSEX);
wc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//通过函数来设置一个白色的背景,这里大家设置为NULL看看,会很有趣的
wc.hCursor=NULL;//不设置
wc.hIcon=NULL;//不设置
wc.hIconSm=NULL;//不设置
wc.hInstance=hInstance;//当前程序的句柄,hInstance是有系统给传递的
wc.lpfnWndProc=WinProc;//窗口处理过程的回调函数。
wc.lpszClassName=szName;//窗口类的名字。
wc.lpszMenuName=NULL;
wc.style=CS_HREDRAW|CS_VREDRAW;
RegisterClassEx(&wc);//在系统中注册
hWnd=CreateWindowEx(WS_EX_CLIENTEDGE,szName,_T("我的窗口我喜欢"),WS_OVERLAPPEDWINDOW,
200,100,600,400,NULL,NULL,hInstance,NULL);//创建窗口,窗口标题为"我的窗口我喜欢"
if(hWnd==NULL)
{
MessageBox(NULL,_T("There'sanError"),_T("ErrorTitle"),MB_ICONEXCLAMATION|MB_OK);
return0;
}
ShowWindow(hWnd,nShowCmd);//显示窗口
UpdateWindow(hWnd);
//下面是对消息的循环处理,大家先不必管这些,下节课我会细说的
while(GetMessage(&Msg,NULL,0,0))
{
TranslateMessage(&Msg);//翻译消息
DispatchMessage(&Msg);//分派消息
}
returnMsg.message;
}
//消息处理函数
LRESULTWINAPIWinProc(HWNDhWnd,UINTMsg,WPARAMwParam,LPARAMlParam)
{
switch(Msg)//处理消息过程
{
caseWM_DESTROY://响应鼠标单击关闭按钮事件
PostQuitMessage(0);//退出消息队列
return0;//退出函数
}
returnDefWindowProc(hWnd,Msg,wParam,lParam);
}
5. 如何用C语言编写一个窗体应用程序
要用C语言编写一个窗体应用程序需要调用系统或第三方提供的API函数,一般的步骤是:
定义窗口类
注册窗口类
创建窗口
显示、更新窗口
进行消息循环,不断处理窗口消息
6. 学c语言如何做出有界面的程序
1、新建一个C项目,点击文件,新建,项目,选择C++Win32控制台应用。
7. C语怎么写窗口
C语言在windows当然可以写窗口的,早期的窗口很多是用C而非C++写的只是现在很少有人这样做了(因为有MFC,VCL,QT)以下是一个EX:#include<windows.h>/**/LRESULTCALLBACKWndProc(HWNDhwnd,UINTMessage,WPARAMwParam,LPARAMlParam){switch(Message){/*Upondestruction,tellthemainthreadtostop*/caseWM_DESTROY:{PostQuitMessage(0);break;}/*Allothermessages(alotofthem)*/default:returnDefWindowProc(hwnd,Message,wParam,lParam);}return0;}/*The'main'functionofWin32GUIprograms:thisiswhereexecutionstarts*/intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnCmdShow){WNDCLASSEXwc;/*Apropertiesstructofourwindow*/HWNDhwnd;/*A'HANDLE',hencetheH,orapointertoourwindow*/MSGMsg;/**//**/memset(&wc,0,sizeof(wc));wc.cbSize=sizeof(WNDCLASSEX);wc.lpfnWndProc=WndProc;/**/wc.hInstance=hInstance;wc.hCursor=LoadCursor(NULL,IDC_ARROW);/*White,COLOR_WINDOWisjusta#defineforasystemcolor,tryCtrl+Clickingit*/wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);wc.lpszClassName="WindowClass";wc.hIcon=LoadIcon(NULL,IDI_APPLICATION);/*Loadastandardicon*/wc.hIconSm=LoadIcon(NULL,IDI_APPLICATION);/*usethename"A"tousetheprojecticon*/if(!RegisterClassEx(&wc)){MessageBox(NULL,"WindowRegistrationFailed!","Error!",MB_ICONEXCLAMATION|MB_OK);return0;}hwnd=CreateWindowEx(WS_EX_CLIENTEDGE,"WindowClass","Caption",WS_VISIBLE|WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,/*x*/CW_USEDEFAULT,/*y*/640,/*width*/480,/*height*/NULL,NULL,hInstance,NULL);if(hwnd==NULL){MessageBox(NULL,"WindowCreationFailed!","Error!",MB_ICONEXCLAMATION|MB_OK);return0;}/*.,*/while(GetMessage(&Msg,NULL,0,0)>0){/*Ifnoerrorisreceived...*/TranslateMessage(&Msg);/**/DispatchMessage(&Msg);/*SendittoWndProc*/}returnMsg.wParam;}
8. C语言如何开发桌面GUI应用程序
这里介绍一种非常简单的方法,使用GTK,一个基于C语言开发的跨平台图形工具包,可以直接
使用C语言
快速完成桌面GUI程序的开发,下面我简单介绍一下实现过程,主要内容如下:
使用C语言
1.首先,下载安装GTK,这里有2种方法,一种是按照GTK官网的方法一步一步配置,还有一种是直接使用打包好的GTK-bundle包,这里以第二种方法为例,直接使用打包好的GTK-bundle包,这个可以直接在CSDN上找到下载,如下,解压这个zip文件到任意一个文件夹,之后需要将bin目录添加到环境变量中:
这里你也可以配置Dev-C++,VS2017都可以,网上也有相关资料和教程。至此,我们就完成了利用C语言来开发桌面GUI程序,总的来说,整个过程不难,就是有些繁琐,C语言运行效率高,但毕竟封装性差,做GUI开发还是有些复杂,如果你想快速开发一个GUI应用,可以考虑使用一下其他语言,如C++,C#,Electron等,更简单也更快捷,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言。