请教MFC高手一个简单的问题 你的问题没有描述清楚,MFC一开始就会创建5个类(文档、视图、主框架、APP类和CAbout类),根据你的选项不同,会有不同。替你完成很多基本功能,你要基于MFC编程,没有这些类就没法开始工作,所以......网上有孙鑫老师的VC教程,你可以看看,前3章详细讲解了些基本知识,也剖析了MFC的实现过程和机理。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 谢谢你们回复.是我的错,我没有表达清楚.我的意思,我想创建一个空白的工程,什么类都不要,就象构造WINDOWS API创建工程win32 Application,在创建文件c++Source file文件或添加头文件,一样一个可能是从C/WINDOWS API跳过来不适应的问题,(5个类我自己实例话)不过我看你们的回复,大概知道了:MFC一开始就会创建5个类(文档、视图、主框架、APP类和CAbout类),假如我需要的只是个对话框,这只是个假如罗,假如,我不需要文档,比如说什么都不要,我只要个窗口在显示区显示hello windows MFC程序在创建的时候已经定了5个类的话"MFC一开始就会创建5个类(文档、视图、主框架、APP类和CAbout类),"也就是一开始就定义了这个框架,如果有需要其他功能只能在这个框架添加,修改.如果不需要文档这类东西,那不是整个程序都需要修改了 用向导创建Win32 Application,选择空项目。 需要对话框在创建的时候选择dialog 这是一个MFC程序最简单的框架头文件:class CMyApp : public CWinApp{public: virtual BOOL InitInstance ();};class CMainWindow : public CFrameWnd{public: CMainWindow ();protected: afx_msg void OnPaint (); DECLARE_MESSAGE_MAP ()};cpp文件#include <afxwin.h>#include "XXX.h"CMyApp myApp;/////////////////////////////////////////////////////////////////////////// CMyApp member functionsBOOL CMyApp::InitInstance (){ m_pMainWnd = new CMainWindow; m_pMainWnd->ShowWindow (m_nCmdShow); m_pMainWnd->UpdateWindow (); return TRUE;}BEGIN_MESSAGE_MAP (CMainWindow, CFrameWnd) ON_WM_PAINT ()END_MESSAGE_MAP ()CMainWindow::CMainWindow (){ Create(NULL, _T (""));}void CMainWindow::OnPaint (){ CPaintDC dc (this); CRect rect; GetClientRect (&rect); dc.DrawText (_T ("Hello, Windows"), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER);} 你对比一下不同工程中stdafx.h文件中包含的头文件就清楚了。 你的意思就是要一个空白的MFC工程吧?如Mackz所说用向导创建Win32 Application,选择空项目。然后在设置中选择使用MFC类库即可. mfc对话框程序退出时想删除一个文件 谁有直接控制打印机的代码! 500分求较好的H263和MPEG4算法源码!!各位大哥请帮忙 借人气问一下如何用VC操纵两个数据库? 讨论:用VC编写ActiveX控件的经验谈! 高手这么多,我就不信不能解决这个问题!!!!!!!!! 谁有TDI驱动的例子给一份?不要DrvFltIp_src.zip,骗人的! 调用简单的DLL的错误 软件的性能测试 一个有趣的问题:如何赶快windows启动前执行我的程序? 【求助】VC++6.0生成的exe文件在其他电脑没法运行,苦啊苦 请教,关于链接模式,Debug模式与Release模式及程序发布打包
我的意思,我想创建一个空白的工程,什么类都不要,就象构造WINDOWS API创建工程win32 Application,在创建文件c++Source file文件或添加头文件,一样一个可能是从C/WINDOWS API跳过来不适应的问题,(5个类我自己实例话)
不过我看你们的回复,大概知道了:MFC一开始就会创建5个类(文档、视图、主框架、APP类和CAbout类),假如我需要的只是个对话框,这只是个假如罗,假如,我不需要文档,比如说什么都不要,我只要个窗口在显示区显示hello windows
头文件:
class CMyApp : public CWinApp
{
public:
virtual BOOL InitInstance ();
};class CMainWindow : public CFrameWnd
{
public:
CMainWindow ();protected:
afx_msg void OnPaint ();
DECLARE_MESSAGE_MAP ()
};
cpp文件
#include <afxwin.h>
#include "XXX.h"CMyApp myApp;/////////////////////////////////////////////////////////////////////////
// CMyApp member functionsBOOL CMyApp::InitInstance ()
{
m_pMainWnd = new CMainWindow;
m_pMainWnd->ShowWindow (m_nCmdShow);
m_pMainWnd->UpdateWindow ();
return TRUE;
}BEGIN_MESSAGE_MAP (CMainWindow, CFrameWnd)
ON_WM_PAINT ()
END_MESSAGE_MAP ()CMainWindow::CMainWindow ()
{
Create(NULL, _T (""));
}void CMainWindow::OnPaint ()
{
CPaintDC dc (this);
CRect rect;
GetClientRect (&rect); dc.DrawText (_T ("Hello, Windows"), -1, &rect,
DT_SINGLELINE | DT_CENTER | DT_VCENTER);
}