请使用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;
相关推荐
消失的旧时光-194325 分钟前
Kotlin JSON 序列化库选型指南:Kotlinx.serialization vs Gson
开发语言·kotlin·json
newchenxf29 分钟前
AndroidStudio版本和AGP版本和gradle版本以及kotlin gradle plugin版本关系梳理 2025
android·开发语言·kotlin
猫头虎39 分钟前
Rust评测案例:Rust、Java、Python、Go、C++ 实现五大排序算法的执行时间效率比较(基于 OnlineGDB 平台)
java·开发语言·c++·python·golang·rust·排序算法
milanyangbo43 分钟前
从局部性原理到一致性模型:深入剖析缓存设计的核心权衡
开发语言·后端·缓存·架构
ftpeak1 小时前
Rust 嵌入式开发的经验之谈
开发语言·后端·rust
lly2024061 小时前
Node.js 多进程
开发语言
曹绍华2 小时前
kotlin扩展函数是如何实现的
android·开发语言·kotlin
上去我就QWER2 小时前
Qt中的QShortcut:高效键盘快捷方式开发指南
开发语言·c++·qt
QT 小鲜肉3 小时前
【C++基础与提高】第二章:C++数据类型系统——构建程序的基础砖石
开发语言·c++·笔记
lsx2024064 小时前
HTML5 新元素
开发语言