当前位置: 首页 > 知识库问答 >
问题:

如何基于父对话框中设置的变量在子MFC对话框中显示值?

呼延辰龙
2023-03-14

我有一个MFC项目,我正在工作。在主对话框中,有一个按钮可以为用户输入打开子对话框。然后,当在子框中单击确定时,在父对话框中将此数据设置为变量。这一点都很好用。

现在,子对话框中的文本框初始化为子对话框的OnInitDialog()中的预置值。我希望这些值初始化为它们在父对话框中连接到的变量。

void ChildBox::DoDataExchange(CdataExchange* pDX)
{
    CDialog::DoDataExchange(pDX);
    DDX_Text(pDX, IDC_SAMPCOUNT, sampCnt);
}

BOOL FNameIn::OnInitDialog()
{
    CDialog::OnInitDialog();
    GetDlgItem(IDC_SAMPCOUNT)->SetWindowTextA("1");
    return TRUE;
}
void ParentDialog::OnInput()
{
    ChildBox dlg;
    if (dlg.DoModal() == IDOK)
    {
        sampleCount = dlg.sampCnt;
    }
}

共有1个答案

孙熠彤
2023-03-14

修改子对话框的构造函数以接受CString参数并将其存储到子对话框的sampCnt变量中。然后由于DDX_Text语句,MFC代码将在控件中显示它。

 类似资料:
  • 从2015年的谷歌I/O中,我了解到谷歌play服务中有一个新的对话框,用户不需要退出当前应用程序来打开位置。下面的图片显示了它的样子: 现在我的问题是,我如何在我的项目中实现这一点?我已经找了,但没有找到任何有效的答案,请帮助!

  • 当我单击登录按钮时,我想显示,并且移动到另一个页面需要时间。我该怎么做?

  • 我在应用程序中使用“Android-Rate”库。当我尝试显示对话框时遇到问题。 当对话框打开时,里面有我放的句子,但我看不到下图中的按钮: 如您所见,文本显示但按钮未显示,就像按钮不可见一样,但如果您单击对话框的白色部分,它将打开App Store页面。 这是我的代码: 我还将此代码放在<code>Strings.xml</code>中: 你能帮我解决这个问题吗?

  • 我在对话框中遇到WebView的问题。我尝试过许多不同的技巧,但都没有奏效。所以,我的问题是我无法在自定义对话框中加载WebView。它打开对话框,不会给出任何错误,但对话框不会“填充”web视图。它只是显示一个对话框的标题。 AlertDialog.Builder确实在对话框中打开webview,但单击输入字段时不会打开键盘。如果我打开键盘,它会出现在对话框后面。(这似乎是众所周知的bug...

  • 我怎么能居中的(MUI)?我的代码: 标题与文本"Ingreso de Procdymientos"居中请

  • 本文向大家介绍MFC设置对话框焦点的方法简述,包括了MFC设置对话框焦点的方法简述的使用技巧和注意事项,需要的朋友参考一下 本文简单讲述了MFC设置对话框焦点的方法,分享给大家供大家参考。具体实现方法如下: 具体的方法有两种: 1. 设置对话框控件的tab order。 按Ctrl+D即可看见。将需要被设置到焦点的空间的tab order设为1. 2. 对话框的OnInitDialog返回FALS