我是菜鸟!求教一下,MFC或Win32 application!
比如我现在写好了一个a.cpp,内容是:#include<iostream>#include<conio.h>intmain(){std::cout<<"hellowor...
比如我现在写好了一个a.cpp,
内容是:
#include <iostream>
#include <conio.h>
int main()
{
std::cout << "hello world!" << std::endl;
getch();
return 0;
}
而且生成了一个a.exe.但是他却是以命令行形式运行的!如何把它加入MFC,或Win32 application??有人能教一下我么??就是,只要他不是以命令行形式运行就行!不用别的什么修饰!应该怎么做? 展开
内容是:
#include <iostream>
#include <conio.h>
int main()
{
std::cout << "hello world!" << std::endl;
getch();
return 0;
}
而且生成了一个a.exe.但是他却是以命令行形式运行的!如何把它加入MFC,或Win32 application??有人能教一下我么??就是,只要他不是以命令行形式运行就行!不用别的什么修饰!应该怎么做? 展开
4个回答
展开全部
MFC 和 Windows API 编程不是那样的
1、windows API 编程
有好几个步骤,像最简单的hello world 就有百行代码吧!!
当然百行代码其实很简单,不要被吓到了!!
首先要 #include<windows.h> //windows的头文件
然后是要 声明回调函数
进入winmain 主函数 相当于C中的main
定义窗口,注册窗口,产生窗口,更新窗口等
然后进入消息循环。
还要定义回调函数,回调函数即是处理消息的函数
MFC则比较简单
你在VC++中选择新建->工程里选择MFC(EXE)
则VC会自动帮你生成窗口框架
然后再在框架里加上某些函数来实现功能!!
PS:在windows编程里有很多不一样的
建议先去看一下书吧
MSDN
给你一段代码参考
#include <windows.h>
#include <stdio.h>
LRESULT CALLBACK WinSunProc( //声明回调函数
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
);
int WINAPI WinMain(
HINSTANCE hInstance, // handle to current instance
HINSTANCE hPrevInstance, // handle to previous instance
LPSTR lpCmdLine, // pointer to command line
int nCmdShow // show state of window
)
{
WNDCLASS wndclass;
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); //背景颜色
wndclass.hCursor=LoadCursor(NULL,IDC_CROSS); //光标类型,NULL为使用系统自带类型
wndclass.hIcon=LoadIcon(NULL,IDI_ERROR); //同理
wndclass.hInstance=hInstance; //指定实例号,由WinMain函数给出,直接用
wndclass.lpfnWndProc=WinSunProc; //指定回调函数,将回调函数地址赋值给该指针
wndclass.lpszClassName="haha"; //窗口类的名字
wndclass.lpszMenuName=NULL; //菜单名字
wndclass.style=CS_HREDRAW | CS_VREDRAW;
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
RegisterClass(&wndclass);
HWND hwnd; //定义一个窗口句柄变量(指针类型),将创建的窗口赋值给该变量
hwnd=CreateWindow("haha","哈哈哈",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,
CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL); //参数详见MSDN
ShowWindow(hwnd,SW_SHOWNORMAL); //显示窗口
UpdateWindow(hwnd); //更新窗口
MSG msg; //消息循环机制
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
//主函数结束
//定义回调函数
LRESULT CALLBACK WinSunProc(
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
)
{
switch(uMsg)
{
case WM_PAINT:
HDC hdc;
PAINTSTRUCT ps;
hdc=BeginPaint(hwnd,&ps);
TextOut(hdc,0,0,"Hello World!",strlen("Hello World!"));
EndPaint(hwnd,&ps);
break;
case WM_CLOSE:
if(IDYES==MessageBox(hwnd,"确定要退出?","退出",MB_YESNO))
{
DestroyWindow(hwnd);
}
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
}
1、windows API 编程
有好几个步骤,像最简单的hello world 就有百行代码吧!!
当然百行代码其实很简单,不要被吓到了!!
首先要 #include<windows.h> //windows的头文件
然后是要 声明回调函数
进入winmain 主函数 相当于C中的main
定义窗口,注册窗口,产生窗口,更新窗口等
然后进入消息循环。
还要定义回调函数,回调函数即是处理消息的函数
MFC则比较简单
你在VC++中选择新建->工程里选择MFC(EXE)
则VC会自动帮你生成窗口框架
然后再在框架里加上某些函数来实现功能!!
PS:在windows编程里有很多不一样的
建议先去看一下书吧
MSDN
给你一段代码参考
#include <windows.h>
#include <stdio.h>
LRESULT CALLBACK WinSunProc( //声明回调函数
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
);
int WINAPI WinMain(
HINSTANCE hInstance, // handle to current instance
HINSTANCE hPrevInstance, // handle to previous instance
LPSTR lpCmdLine, // pointer to command line
int nCmdShow // show state of window
)
{
WNDCLASS wndclass;
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); //背景颜色
wndclass.hCursor=LoadCursor(NULL,IDC_CROSS); //光标类型,NULL为使用系统自带类型
wndclass.hIcon=LoadIcon(NULL,IDI_ERROR); //同理
wndclass.hInstance=hInstance; //指定实例号,由WinMain函数给出,直接用
wndclass.lpfnWndProc=WinSunProc; //指定回调函数,将回调函数地址赋值给该指针
wndclass.lpszClassName="haha"; //窗口类的名字
wndclass.lpszMenuName=NULL; //菜单名字
wndclass.style=CS_HREDRAW | CS_VREDRAW;
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
RegisterClass(&wndclass);
HWND hwnd; //定义一个窗口句柄变量(指针类型),将创建的窗口赋值给该变量
hwnd=CreateWindow("haha","哈哈哈",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,
CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL); //参数详见MSDN
ShowWindow(hwnd,SW_SHOWNORMAL); //显示窗口
UpdateWindow(hwnd); //更新窗口
MSG msg; //消息循环机制
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
//主函数结束
//定义回调函数
LRESULT CALLBACK WinSunProc(
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
)
{
switch(uMsg)
{
case WM_PAINT:
HDC hdc;
PAINTSTRUCT ps;
hdc=BeginPaint(hwnd,&ps);
TextOut(hdc,0,0,"Hello World!",strlen("Hello World!"));
EndPaint(hwnd,&ps);
break;
case WM_CLOSE:
if(IDYES==MessageBox(hwnd,"确定要退出?","退出",MB_YESNO))
{
DestroyWindow(hwnd);
}
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
}
展开全部
叫你个简单的 嘿嘿
用VC6编译就可以了~~
#include <windows.h>
int main(int argc, char* argv[])
{
MessageBox(NULL,TEXT("Hello,world!"),TEXT("Hello,world!"),MB_OK);
return 0;
}
用VC6编译就可以了~~
#include <windows.h>
int main(int argc, char* argv[])
{
MessageBox(NULL,TEXT("Hello,world!"),TEXT("Hello,world!"),MB_OK);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
做个对话框程序就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream.h>
void main()
{
cout<<"hello"<<endl;
}
void main()
{
cout<<"hello"<<endl;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询