实例重载MessageBox

时间:2017-04-18 19:59:39

标签: c++ windows c++-cli messagebox

我正在尝试使用Myform C ++ MessageBox来显示带有文本的按钮,这些按钮可以执行关闭等功能,但是当我尝试向MessageBox本身添加按钮时,我遇到了错误。

  

错误:

     
      
  • 'MessageBox':模糊符号IntelliSense:没有重载函数的实例

  •   
  • IntelliSense:没有重载函数的实例“System :: Windows :: Forms :: MessageBox :: Show”匹配参数列表           参数类型是:(const char [12],System :: Windows :: Forms :: MessageBoxButtons,   系统:视窗:形式:MessageBoxIcon)

  •   

我还使用了private void GlobalBeginRequest(object sender, EventArgs e) { var Origins = "domain1.com,domain2.com,domain3.com:8081"; if ((Request.Headers["Origin"] != null) && (Origins.Split(',').FirstOrDefault(x => Request.Headers["Origin"].Contains(x)) != null)) { Response.Headers.Add("Access-Control-Allow-Origin", String.Format("{0}", Request.Headers["Origin"])); } }

代码:

#include <windows.h>

1 个答案:

答案 0 :(得分:1)

MessageBox::Show("Close:\nProgram?", MessageBoxButtons::OK);

MessageBox::Show("Choose your answer", MessageBoxButtons::YesNoCancel, MessageBoxIcon::Exclamation);

好的,您的两个方法调用正在查找占用(String^, MessageBoxButtons)(String^, MessageBoxButtons, MessageBoxIcon)的重载。

MSDN列出MessageBox::Show的重载,并且不包括这些重载。最近的重载是(String^, String^, MessageBoxButtons)(String^, String^, MessageBoxButtons, MessageBoxIcon)。在每个中,第二个字符串是消息框标题,该文本将显示在消息框的标题栏中。

此外,您无需#include <windows.h>即可调用这些.Net方法。

这样的事情可以帮到你:

MessageBox::Show("Close:\nProgram?", "My Fancy App", MessageBoxButtons::OK);

MessageBox::Show("Choose your answer", "My Fancy App", MessageBoxButtons::YesNoCancel, MessageBoxIcon::Exclamation);