㈠ c语言中如何编写图形界面
最关键是要头文件 "graphics.h"
#include<graphics.h>/*打印一个SINX曲线*/
#include<math.h>
void main()
{
int driver,mode,x,y1,y2,i,j,n;
driver=DETECT;
mode=0;
initgraph(&driver,&mode,"");/*初使化必须有*/
setcolor(RED);
for(x=-300;x<=500;x++)
{
if(x%2==0)
{ i=x;
y1=(int)80*sin(0.05*x)+100;
putpixel(i,y1,YELLOW);
}
else{j=x;
y2=(int)80*sin(0.05*x)+100;
putpixel(j,y2,RED);
lineto(i,y1);
}
}
line(0,100,1000,100);
line(0,0,0,1000);
getch();
closegraph();/*关闭*/
}
㈡ C语言如何做图形界面
/* 以下代码不含丝毫MFC,在Visual C++ 6.0测试通过,能够出现一个正规的Windows窗口 */
#pragma comment(linker,"/SUBSYSTEM:Windows /ENTRY:mainCRTStartup")
#include <windows.h>
/* 使类名成为全局变量 */
TCHAR szClassName[ ] = TEXT("WindowsApp");
/* 这个函数由Windows内部函数DispatchMessage()调用 */
LRESULT CALLBACK WindowProcere (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HDC hdc ;
PAINTSTRUCT ps ;
RECT rect ;
switch (message) /* 处理信息 */
{
case WM_DESTROY:
PostQuitMessage (0); /* 发送WM_QUIT到消息队列 */
break;
case WM_PAINT:
hdc = BeginPaint (hWnd, &ps) ;
GetClientRect (hWnd, &rect) ;
DrawText (hdc, TEXT("Hello, Windows NT!"), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
EndPaint (hWnd, &ps) ;
break ;
default: /* 不处理的消息 */
return DefWindowProc (hWnd, message, wParam, lParam);
}
return 0;
}
/* 下面是主函数 */
int main ( void )
{
HINSTANCE hThisInstance = GetMoleHandle(NULL) ;
int nFunsterStil = SW_SHOW ;
HWND hWnd; /* 这是窗口的句柄 */
MSG messages;/* 应用程序的消息保存在这里 */
WNDCLASSEX wincl;/* 窗口类的数据结构 */
/* 窗口结构 */
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcere;/* 这个函数由Windows操作系统调用 */
wincl.style = CS_DBLCLKS; /* 获取双击指令 */
wincl.cbSize = sizeof (WNDCLASSEX);
/* 使用默认图标和鼠标指针 */
wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
wincl.lpszMenuName = NULL; /* 没有菜单 */
wincl.cbClsExtra = 0;/* 窗口类后面没有多余的字节 */
wincl.cbWndExtra = 0;/* 结构或者窗口实例 */
/* 使用窗口的默认颜色作为窗口的背景色 */
wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;
/* 注册窗口类。如果注册失败,那么就退出程序 */
if (!RegisterClassEx (&wincl))
return 0;
/* 窗口类已被注册。创建它的程序 */
hWnd = CreateWindowEx (
0,
szClassName, /* 类名 */
TEXT("Windows App"), /* 窗口标题栏的文字 */
WS_OVERLAPPEDWINDOW, /* 默认窗口 */
CW_USEDEFAULT, /* 窗口左上角的位置 */
CW_USEDEFAULT, /* 窗口右下角的位置 */
544, /* 窗口宽度(以“像素”位单位) */
375, /* 窗口高度(以“像素”位单位) */
HWND_DESKTOP,/* 窗口是桌面的子窗口 */
NULL,/* 该窗口无菜单 */
hThisInstance, /* 程序实例的句柄 */
NULL /* 没有窗口创建的数据 */
);
/* 显示窗口 */
ShowWindow (hWnd, nFunsterStil);
/* 重绘窗口 */
UpdateWindow(hWnd);
/* 运行消息循环。循环到GetMessage()函数返回0 */
while (GetMessage (&messages, NULL, 0, 0))
{
/* 把虚拟信息翻译成字符信息 */
TranslateMessage(&messages);
/* 发送信息到窗口过程 */
DispatchMessage(&messages);
}
/* 返回PostQuitMessage()函数的返回值 */
return messages.wParam;
}
㈢ C语言图形界面怎么做出来
windows平台下,含入windows.h,就可以编写图形界面的程序了。跟面向过程还是面向对象没有关系。
并且C++写界面一点都不麻烦,它也有很多类库可以让你选择,如VCL,MFC,还有qt之类的跨平台库。
初学者很想写windows图形界面的程序,推荐C++ Builder,虽然现在它的发展不太明朗,但写起图形界面来,还是相当容易的,跟Visual Basic一样拖拖控件就好了。
㈣ 怎么用c语言做一个界面
C 语言,就像他的名字一样,他就是一门计算机编程语言;
要做界面,需要调用绘图函数,而绘图函数有很多种,Windows 的 GDI 和 GDI+ 或者 Direct2D,Linux 下的 OpenGL,移动设备上的 XNA ,都可以;
MFC 是微软为咱们创建 Windows 窗体程序而设计好的开发包,可以提高开发效率,以面向对象的方式思考和设计程序,学习这个,需要有 Windows API 基础;
至于 API,在 Windows 下面,就是指 Win32 API 了,就是 32 位 Windows 操作系统的应用程序编程接口,是 Windows 系统提供给开发者的底层功能;
这些都不是一两句话可以概括的,需要自己多点去接触,才会有自己的心得;
最后一条比喻不是很恰当,面向对象拆开来,可以是一堆 API,也可以是单纯的一堆 C 语言句子,当然,也可以是一堆嵌入式汇编语句,所以没办法进行比喻;
㈤ 如何用c语言设计界面
使用graphic相关的函数可以做图像界面。
如果是类似Dos那样的,你就使用一串*或#号等分割。
㈥ c语言如何写出一个图形化的界面,难道只能是黑白的win32控制台程序么
控制台字符界面,只要是字符来进通信。win32
只要是用来开发主流windows程序的。一步一步来看:首先从函数接口:int
main(int
argc,
char
*argv[])单单的一个入口点,两个参数就是,命令行参数。一个数组和一个整形。说实话让我来说我也说不出来这个
int
main有什么可讲的。重点讲一讲这个winmainint
winapi
winmain(hinstance
hinstance,hinstance
hprevinstance,lpstr
lpcmdline,int
ncmdshow)在你创建win32程序的时候,入口点是这个:所以,系统在加载你的程序进入内存的时候cs:ip在完成程序初始化之后就会指向这个winmain
首地址。我看来看参数:
hinstance是windows
为每一个win32程序分配的实例化句柄(用来管理程序的一个标识符)hprevinstance前一个执行实体的执行实体句柄
lpcmdline
同样,命令行ncmdshow
状态。-----------------------简而言之,一般的c编译器默认都会用main
来作为程序入口,这个规范。但是windows为了方便程序的内存管理或者是图形界面的管理。重新自定义了一个入口函数,当然编译器肯定要重新编写了,因为这个一个新的规范。参数即是为了管理程序的。基本上每一个windows程序都会有一个winmain
。以前写过mrp的手机程序。int
tmain(int
x,int
y,int
flags)显而易见,这个触屏的坐标个触发的事件。
我相信你已经懂了。如果你想研究win32参数具体作用,那么推荐一本
㈦ 学c语言如何做出有界面的程序
1、新建一个C项目,点击文件,新建,项目,选择C++Win32控制台应用。
㈧ C语言如何制作程序界面~~
使用一下linux系统,就可以感受到c编出来的界面的样子了。
事实上,c可以写出任何形式的界面,只不过过程比较麻烦而已,就像用机器语言也可以写出任何一个程序,只不过工作量将是个天文数字而已。
㈨ 怎么用c语言做一个界面
空窗口:
#include<windows.h>
/*所有的窗口输出到这里去*/
LRESULTCALLBACKWndProc(HWNDhwnd,UINTMessage,WPARAMwParam,LPARAMlParam){
switch(Message){
/*停止后,告诉主线程停止*/
caseWM_DESTROY:{
PostQuitMessage(0);
break;
}
/*所有其他消息都使用默认程序处理*/
default:
returnDefWindowProc(hwnd,Message,wParam,lParam);
}
return0;
}
/*Win32GUI程序的主要功能:从这里开始执行*/
intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnCmdShow){
WNDCLASSEXwc;/*窗口的属性结构*/
HWNDhwnd;/*"句柄"一个窗口的标识符*/
MSGMsg;/*所有消息的临时位置*/
/*修改结构和设置的东西*/
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,"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,/*宽度*/
480,/*高度*/
NULL,NULL,hInstance,NULL);
if(hwnd==NULL){
MessageBox(NULL,"WindowCreationFailed!","Error!",MB_ICONEXCLAMATION|MB_OK);
return0;
}
/*
所有的输入处理和发送到窗口过程。
注意,这个块代码流,直到它接收到的东西,
所以回路不会产生不合理的高CPU使用率。
*/
while(GetMessage(&Msg,NULL,0,0)>0)/*如果没有收到任何错误…*/
{
TranslateMessage(&Msg);/*如果存在翻译关键码字符*/
DispatchMessage(&Msg);/*发送它到WndProc*/
}
returnMsg.wParam;
}
㈩ 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;
}