温馨提示×

MFC MessageBox改变确定取消为OK CANCLE

MFC
小云
231
2023-08-18 15:00:32
栏目: 编程语言

您可以使用以下代码将MFC MessageBox的确定按钮和取消按钮更改为"OK"和"CANCEL":

// 更改 MessageBox 的按钮文本
AfxSetResourceHandle(AfxGetInstanceHandle());
UINT nOldStyle = MB_OKCANCEL;
UINT nNewStyle = MB_OKCANCEL;
// 获取当前语言环境的按钮文本
CString strOK, strCancel;
AfxExtractSubString(strOK, AfxGetAppName(), 0, '\n');
AfxExtractSubString(strCancel, AfxGetAppName(), 1, '\n');
// 更改按钮文本为 "OK" 和 "CANCEL"
AfxMessageBox("Your message", nNewStyle);
CWnd* pWnd = CWnd::FindWindow("#32770", NULL);
if (pWnd != NULL)
{
CWnd* pBtnOK = pWnd->GetDlgItem(IDOK);
if (pBtnOK != NULL)
pBtnOK->SetWindowText(strOK);
CWnd* pBtnCancel = pWnd->GetDlgItem(IDCANCEL);
if (pBtnCancel != NULL)
pBtnCancel->SetWindowText(strCancel);
}

请注意,为了实现这个效果,您需要在资源文件的字符串表中修改默认的确定按钮和取消按钮文本。您可以在资源文件中找到ID为IDOK和IDCANCEL的字符串,并将其改为"OK"和"CANCEL"。

此外,由于MFC MessageBox是一个模态对话框,上述代码中的AfxMessageBox函数将会显示消息框。您需要将"Your message"替换为您想要显示的实际消息内容。

0