messageboxshow 确定,取消

MFC MessageBox改变确定取消为OK CANCLE

MFC(Microsoft Foundation Class)是微软提供的一个用于简化Windows应用程序开发的C++类库,在MFC中,MessageBox是一个常用的对话框控件,用于显示消息框并与用户进行交互,默认情况下,MessageBox的确定和取消按钮分别显示为“OK”和“Cancel”,本文将介绍如何使用MFC更改MessageBox中的确定和取消按钮文本。

messageboxshow 确定,取消

创建自定义消息框

1、在MFC项目中,打开对话框资源编辑器(Dialog Editor)。

2、选择要修改的消息框,右键单击并选择“添加控件”->“静态文本”,然后将其拖放到对话框上。

3、重复步骤2,分别添加两个静态文本控件,并将其命名为“确认按钮”和“取消按钮”。

4、将这两个静态文本控件的ID属性设置为相应的常量值,例如IDOK和IDCANCEL。

5、选中“确定按钮”静态文本控件,然后在属性窗口中找到“编辑字符串”(Edit String)属性,双击该属性以打开编辑字符串对话框。

6、在编辑字符串对话框中,将“%s”替换为“OK”,然后单击“确定”按钮,同样地,将“%s”替换为“Cancel”。

messageboxshow 确定,取消

7、关闭所有对话框并编译运行项目,查看自定义消息框的效果。

重写MessageBox函数

1、在MFC项目中,打开需要修改MessageBox的地方(例如某个对话框类或视图类)。

2、添加以下头文件:

include <afxwinappex.h>

3、添加以下声明:

afx_msg LRESULT OnInitDialog();

4、重写OnInitDialog函数,在其中添加以下代码:

// 获取当前线程的消息映射表指针
UINT nID = (UINT)::GetWindowLong(m_hWnd, GWL_ID);
if (nID == IDD_MYDIALOG) // 假设自定义对话框的ID为IDD_MYDIALOG
{
    CRect rect;
    GetClientRect(&rect); // 获取客户区矩形
    int buttonWidth = rect.Width() / 3; // 将客户区宽度分为3等分,分配给按钮宽度
    ::SetWindowPos(m_hWnd, NULL, rect.left, rect.top, rect.Width(), rect.Height(), SWP_NOZORDER | SWP_NOACTIVATE); // 调整对话框位置和大小
}
return TRUE; // 返回TRUE表示成功处理对话框初始化事件

5、在OnInitDialog函数中,添加以下代码以创建自定义消息框:

messageboxshow 确定,取消

// 创建自定义消息框控件数组
CButton* pBtnOk = new CButton();
pBtnOk->Create(_T("OK"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(0, 0, buttonWidth * 0, buttonWidth), m_hWnd, 1); // OK按钮的位置和大小由buttonWidth控制
pBtnOk->SetWindowText(_T("OK")); // 设置OK按钮文本
pBtnOk->SetWindowLong(GWL_USERDATA, IDOK); // 将OK按钮的用户数据设置为IDOK常量值
m_btnOk = pBtnOk; // 将创建的按钮指针保存到成员变量中
CButton* pBtnCancel = new CButton();
pBtnCancel->Create(_T("Cancel"), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(buttonWidth * 1, 0, buttonWidth * 2, buttonWidth), m_hWnd, 2); // Cancel按钮的位置和大小由buttonWidth控制
pBtnCancel->SetWindowText(_T("Cancel")); // 设置Cancel按钮文本
pBtnCancel->SetWindowLong(GWL_USERDATA, IDCANCEL); // 将Cancel按钮的用户数据设置为IDCANCEL常量值
m_btnCancel = pBtnCancel; // 将创建的按钮指针保存到成员变量中

6、在OnInitDialog函数中,添加以下代码以显示自定义消息框:

// 显示自定义消息框控件数组中的按钮
ShowWindow(m_btnOk->m_hWnd, SW_SHOW); // 显示OK按钮
ShowWindow(m_btnCancel->m_hWnd, SW_SHOW); // 显示Cancel按钮

处理按钮点击事件

1、在MFC项目的头文件中,添加以下声明:

afx_msg void OnBtnOkClicked(); // OK按钮点击事件处理函数声明
afx_msg void OnBtnCancelClicked(); // Cancel按钮点击事件处理函数声明

2、在对应的源文件中,实现上述声明:

void CMyDialog::OnBtnOkClicked() // OK按钮点击事件处理函数实现
{
    AfxMessageBox(_T("您点击了确定按钮。")); // 在消息框中显示提示信息
}
void CMyDialog::OnBtnCancelClicked() // Cancel按钮点击事件处理函数实现
{
    AfxMessageBox(_T("您点击了取消按钮。")); // 在消息框中显示提示信息
}

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/173396.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2023-12-27 10:57
Next 2023-12-27 10:59

相关推荐

  • 用html怎么写淘宝的评价框

    在构建淘宝评价框时,我们需要考虑的几个主要元素包括:评价星级、评价内容输入框以及提交按钮,以下是使用HTML编写评价框的基本步骤和代码示例:1. 定义HTML结构我们需要创建基本的HTML结构来容纳评价框的各个部分,这通常涉及创建一个表单(&lt;form&gt;),并在其中放置用于输入评价的文本区域(&lt;……

    2024-04-05
    0161
  • html怎么按钮宽度

    在HTML中,按钮的宽度可以通过多种方式进行调整,以下是一些常用的技术介绍:1、使用内联样式在HTML中,可以使用内联样式(inline style)直接为按钮元素设置宽度,内联样式是将CSS代码直接写在HTML标签的style属性中。&lt;button style=&quot;width: 200px;&q……

    2024-04-06
    0159
  • html中复选框怎么用

    HTML中复选框怎么用复选框是HTML中的一个常用元素,它允许用户在多个选项中进行选择,复选框通常用于表示一组相关的选项,用户可以选择其中的一个或多个选项,本文将详细介绍如何在HTML中使用复选框。1. 创建复选框要在HTML中创建一个复选框,可以使用&lt;input&gt;标签,并将type属性设置为checkbo……

    2023-12-20
    0196
  • 北京企业短信_消息&amp;短信 MSGSMS

    北京企业短信_消息&短信 MSGSMS 是一种用于发送和接收短信的服务,可以帮助企业与客户保持联系。

    2024-06-06
    0113
  • html服务器响应头怎么设置

    在Web开发中,服务器响应头(Server Response Header)扮演着非常重要的角色,它们向浏览器和其他客户端传达关于如何处理返回的数据的重要信息,正确设置服务器响应头对于优化网站性能、提高安全性和改善搜索引擎排名至关重要。理解HTTP响应头HTTP响应头是服务器发送给客户端(通常是Web浏览器)的消息部分,用来描述传输的……

    2024-01-31
    0118
  • html怎么在按钮上添加链接

    在HTML中,我们可以使用&lt;a&gt;标签来创建链接,而按钮则可以使用&lt;button&gt;标签来创建,如果我们想要在按钮上添加链接,可以将这两个标签结合起来使用,以下是具体的步骤:1、创建按钮:我们需要创建一个按钮,在HTML中,我们可以使用&lt;button&gt;标签……

    2024-01-22
    0235

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入