【问题标题】:Input Box in an MFC CWinAppMFC CWinApp 中的输入框
【发布时间】:2011-04-10 02:05:44
【问题描述】:

我想在vc++ mfc中使用一个简单的输入框。我确实创建了一个名为 IDD_DIALOG1 的对话框,并添加了一个文本框。我为输入框添加了一个公共变量,并创建了一个名为 CInputDlg 的类。现在我使用以下代码,但我遇到了错误:

CInputDlg dialog;
if (dialog.DoModal() == IDOK) 
{
    m[nodeTemp][i] = weight;
}

错误是:

Error   2   error C2065: 'CInputDlg' : undeclared identifier    c:\users\omid\documents\visual studio 2008\projects\shortest path\shortest path\shortest pathdlg.cpp    294

有什么问题?谁能帮帮我?

【问题讨论】:

    标签: c++ visual-c++ mfc dialog inputbox


    【解决方案1】:

    在包含此代码的文件顶部(看起来您已将其命名为 shortest pathdlg.cpp):

    CInputDlg dialog;
    if (dialog.DoModal() == IDOK) 
    {
        m[nodeTemp][i] = weight;
    }
    

    您需要添加一个#include 语句,告诉编译器您将使用不同源代码文件中定义的内容。在这种情况下,您需要添加定义类CInputDlg 的头文件。大概该文件称为InputDlg.h。如果是这样,您只需添加以下行:

    #include "InputDlg.h"
    

    更多信息请阅读this MSDN article about #include Directives in C++

    【讨论】:

    • 非常感谢,我做到了,但现在我收到另一条错误消息:错误 1 ​​错误 C2065: 'IDD_DIALOG1' : undeclared identifier c:\users\omid\documents\visual studio 2008\projects\最短路径\最短路径\inputdlg.h 15
    • 我还在 InputDlg.h 中添加了“Resource.h”并解决了这个问题。衷心感谢大家
    • @user:很高兴您解决了问题。 Visual Studio 自动在Resource.h 文件中定义您的对话框(和其他资源);这就是为什么你必须包括它。或者,您可以将Resource.h 包含在您的stdafx.h 文件中,然后它将可用于包含stdafx.h 的所有源文件(应该是所有源文件)。无论如何,如果您的问题得到解决,请通过单击左边空白处的空心复选标记将我的答案标记为已接受。这就是别人知道你想出来的方式。最美好的祝愿!
    【解决方案2】:

    您好,我认为您没有包含 h 文件。显示你的包含在最短 pathdlg.cpp 中

    【讨论】:

      猜你喜欢
      • 2011-03-31
      • 1970-01-01
      • 1970-01-01
      • 2012-05-14
      • 2015-03-10
      • 2013-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多