linux 文件读写 c程序写的对吗?

请问c语言可以编写出窗体吗?_c语言吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:526,954贴子:
请问c语言可以编写出窗体吗?收藏
不想再看控制台界面了,请问怎么编写出窗体。网上给的答案都是用c++的,但是本人小白没学过c++学校老师也说不出个所以然来。
c语言海同强大的师资阵容,因人制定课程内容,分阶段学习.c语言就到正规IT技术培训机构-海同科技,培训IT技术面对面教学,免费重读!
可以,用WinMain————本人正在使用经典版贴吧,楼中楼一律不看不回
正好在做窗口,给你发个最简单的#include &windows.h& LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM); int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
lpCmdLine,
nCmdShow){ char szClassName[] = "Window";
wndclass.style = CS_HREDRAW|CS_VREDRAW; // 指定如果大小改变就重画 wndclass.lpfnWndProc = MainWndP // 窗口函数指针 wndclass.cbClsExtra = 0;
// 没有额外的类内存 wndclass.cbWndExtra = 0;
// 没有额外的窗口内存 wndclass.hInstance = hI
// 实例句柄
wndclass.hIcon = ::LoadIcon(NULL,
IDI_APPLICATION); // 使用预定义图标 wndclass.hCursor = ::LoadCursor(NULL,
IDC_ARROW);
// 使用预定义的光标 wndclass.hbrBackground = (HBRUSH)
GetStockObject(WHITE_BRUSH); // 使用白色背景画刷 wndclass.lpszMenuName = NULL;
// 不指定菜单 wndclass.lpszClassName = szClassN // 窗口类的名称
// 注册这个窗口类 RegisterClass(&wndclass);
// 创建主窗口 HWND hwnd = ::CreateWindow(
szClassName,
// lpClassName,类名
"My first Window!", // lpWindowName,标题
WS_OVERLAPPEDWINDOW, // dwStyle,窗口风格
CW_USEDEFAULT,
// X,初始 X 坐标
CW_USEDEFAULT,
// Y,初始 Y 坐标
CW_USEDEFAULT,
// nWidth,宽度
CW_USEDEFAULT,
// nHeight,高度
// hWndParent,父窗口句柄
// hMenu,菜单句柄
hInstance,
// hlnstance,程序实例句柄
// lpParam,用户数据
if(hwnd == NULL) {
::MessageBox(NULL, "创建窗口出错!", "error", MB_OK);
return -1; } ::ShowWindow(hwnd,nCmdShow); ::UpdateWindow(hwnd);
while(::GetMessage(&msg, NULL, 0, 0)) {
::TranslateMessage(&msg);
::DispatchMessage(&msg); } return msg.wP} LRESULT CALLBACK MainWndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){ static int cxClient, cyC switch (message) {
case WM_SIZE:
cxClient = LOWORD (lParam) ;
cyClient = HIWORD (lParam) ;
case WM_PAINT:
PAINTSTRUCT
hdc = BeginPaint (hwnd, &ps) ;
SetMapMode(hdc,MM_ANISOTROPIC);
SetWindowExtEx(hdc,2,2,NULL);
SetViewportExtEx(hdc,cxClient,cyClient,NULL);
LineTo(hdc,1,1);
::EndPaint(hwnd, &ps);
case WM_DESTROY:
PostQuitMessage(0) ;
return 0 ; } return ::DefWindowProc(hwnd, message, wParam, lParam);}
LS你确定是最简单的?!这么长。。。————本人正在使用经典版贴吧,楼中楼一律不看不回
只是为了显示个窗口的话,这点代码就够用了:#include &windows.h&LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
switch (message)
case WM_DESTROY:
PostQuitMessage(0);
return DefWindowProc(hWnd, message, wParam, lParam);
return 0;}int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow){
WNDCLASSEX wcex = {0};
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.lpfnWndProc
wcex.hInstance
wcex.lpszClassName
= "TestClass";
RegisterClassEx(&wcex);
hWnd = CreateWindow("TestClass", "Hello world", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, 500, 300, NULL, NULL, hInstance, NULL);
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
while (GetMessage(&msg, NULL, 0, 0))
TranslateMessage(&msg);
DispatchMessage(&msg);
return 0;}————本人正在使用经典版贴吧,楼中楼一律不看不回
我忽然觉得这个窗口代码绝对是最短了:#include &windows.h&int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow){
return MessageBox(NULL, "Hello", "Test", MB_OK);}————本人正在使用经典版贴吧,楼中楼一律不看不回
求楼上的超越#include &windows.h&int APIENTRY WinMain(HINSTANCE,HINSTANCE,LPTSTR,int){ MessageBox(NULL,"","",0);}
非要超越就这么写:#include &windows.h&WINAPI WinMain(a,b,c,d){MessageBox(0,0,0,0);}————本人正在使用经典版贴吧,楼中楼一律不看不回
话说,这个可以算最短么?————本人正在使用经典版贴吧,楼中楼一律不看不回
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
(3) 在C程序中,注释必须单独占一行,不能放在语句的后面.这句话对吗?
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
编程习惯和公司规定而已.有人喜欢注释单独一行,有人喜欢在语句后注释.一般来说,函数的注释要写在函数上面.变量注释可以单独一行,也可以写到变量声明后.
为您推荐:
其他类似问题
扫描下载二维码2013年 总版技术专家分年内排行榜第一
2014年 总版技术专家分年内排行榜第三
2013年 总版技术专家分年内排行榜第一
2014年 总版技术专家分年内排行榜第三
2013年3月 C/C++大版内专家分月排行榜第三
2013年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第七
本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 c程序 的文章

 

随机推荐