请使用C语言编写一个简单的MFC应用程序,实现一个窗口并在其中添加一些控件。

以下是一个简单的使用C++编写的MFC应用程序示例,可以在其中添加一些控件。请使用Visual Studio等C++开发工具打开并编译运行。

cpp 复制代码
#include <afxwin.h>

class CMyApp : public CWinApp
{
public:
    virtual BOOL InitInstance();
};

class CMainWindow : public CFrameWnd
{
public:
    CMainWindow();
    afx_msg void OnButtonClicked();
    DECLARE_MESSAGE_MAP()
};

BOOL CMyApp::InitInstance()
{
    CMainWindow* pMainWnd = new CMainWindow();
    m_pMainWnd = pMainWnd;
    pMainWnd->Create(NULL, _T("My Application"));
    pMainWnd->ShowWindow(m_nCmdShow);
    pMainWnd->UpdateWindow();
    return TRUE;
}

CMainWindow::CMainWindow()
{
    Create(NULL, _T("My Application"), WS_OVERLAPPEDWINDOW, CRect(100, 100, 500, 300), NULL);

    CButton* pButton = new CButton();
    pButton->Create(_T("Click Me"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(10, 10, 100, 30), this, 1);

    CEdit* pEdit = new CEdit();
    pEdit->Create(WS_CHILD | WS_VISIBLE | ES_MULTILINE | ES_AUTOVSCROLL, CRect(10, 50, 200, 200), this, 2);
}

void CMainWindow::OnButtonClicked()
{
    MessageBox(_T("Button clicked!"), _T("Message"), MB_OK);
}

BEGIN_MESSAGE_MAP(CMainWindow, CFrameWnd)
    ON_COMMAND(1, OnButtonClicked)
END_MESSAGE_MAP()

CMyApp myApp;
相关推荐
睡美人的小仙女1274 小时前
Threejs加载环境贴图报错Bad File Format: bad initial token
开发语言·javascript·redis
rayufo5 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
RANCE_atttackkk5 小时前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
缺点内向5 小时前
C#编程实战:如何为Word文档添加背景色或背景图片
开发语言·c#·自动化·word·.net
一起养小猫6 小时前
Flutter for OpenHarmony 实战:记账应用数据统计与可视化
开发语言·jvm·数据库·flutter·信息可视化·harmonyos
zhougl9966 小时前
Java 所有关键字及规范分类
java·开发语言
java1234_小锋6 小时前
Java高频面试题:MyISAM索引与InnoDB索引的区别?
java·开发语言
2501_944525546 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面
android·开发语言·前端·javascript·flutter
彷徨而立6 小时前
【C/C++】什么是 运行时库?运行时库 /MT 和 /MD 的区别?
c语言·c++
qq_417129256 小时前
C++中的桥接模式变体
开发语言·c++·算法