【问题标题】:Linking 2 check boxes on different page on MFC dialog based application在基于 MFC 对话框的应用程序的不同页面上链接 2 个复选框
【发布时间】:2019-09-27 09:19:14
【问题描述】:

我制作了 1 个带有 2 个不同 GUI 的单个对话框,它们可以通过选项卡进行选择。每个 GUI 都有许多复选框。一些复选框已链接,使得当检查1时,将自动检查另一个。当 2 个链接的复选框在同一个 GUI 上时,我可以做到。但是当它们在不同的 GUI 上时,我遇到了问题。是否可以在不同的 GUI 上链接 2 个复选框?

这就是我在同一个 GUI 上链接 2 个复选框的方式。当 checkbox1 被选中时, checkbox2 也会被选中。

void ProjectName::OnBnClickedCheckBox1()
{
    bool x = ((CButton*)GetDlgItem(IDC_CheckBox1))->GetCheck();
    ((CButton *)GetDlgItem(IDC_CheckBox2))->SetCheck(x);
}

但是当另一个复选框在另一个 GUI 上时,这不起作用。有没有办法可以调用此 GUI 的 .cpp 上另一个 GUI 上的复选框(例如 IDC_CheckBox3)?或者有没有其他方法可以做到这一点?

提前谢谢你!

【问题讨论】:

  • 请定义“不同的 GUI”。 “GUI”在这里可能不是正确的术语,这使得问题有点不清楚。
  • @Jabberwocky 我认为它是一个有两页的属性表。
  • 不同的对话框?我总共有 3 个对话框。主要的一个是选项卡,另外两个是带有复选框的选项卡。主要的控制将显示其他 2 个对话框中的哪一个。
  • 你应该展示你的资源用于 GUI 项目,也许还有屏幕截图。您没有提供足够的信息。

标签: visual-studio-2010 checkbox mfc dialog


【解决方案1】:

您可以使用参数/变量将值传递给另一个选项卡。

例如Tab1 -> checkbox1 -> (这个复选框的存储值可以在 m_check1 中说)

在 Tab2 中,您应该有另一个变量 m_check1_val,它将保存 Checkbox1 的值。

一旦你点击tab2,你必须初始化Tab2 -> m_check1_val。

然后你可以使用 m_check1_val 来设置 Tab2 中复选框的值

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-23
    • 2021-03-12
    • 1970-01-01
    • 1970-01-01
    • 2011-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多