【发布时间】:2015-06-22 12:39:43
【问题描述】:
我有一个 MFC 应用程序,但现在我需要使用选项卡控件添加新功能(因此我的主程序对话框变为“选项卡 1”)。但是我看到了一个问题 - 使用选项卡时,您必须创建新应用程序,然后将选项卡添加为对话框。所以这意味着我需要重写我在项目中使用的按钮和所有变量的所有事件处理程序。有没有办法迁移到 tabcontrol 应用程序而无需再做这么多工作?
【问题讨论】:
-
是否必须使用选项卡控件?您可以使用包含 CPropertyPage 的 CPropertySheet,因此每个 CPropertyPage 都将是您的对话框,您甚至可以使用页面上已有的对话框模板,处理程序也不需要更改,但您必须用 CPropertyPage 替换 CDialog 类
-
看起来很不错,但不是我想要的。这是一个有用的评论,但我仍然必须使用标签。
-
您可以使用相同的对话框,但将其创建为子对话框,然后将其放入
CPropertyPage。或者将子对话框放在主对话框中,并使用选项卡控件显示/隐藏它。我认为这基本上就是 Robson 所说的,重点是您不必重新开始。 -
CPropertyPage 并不是我真正需要的东西,因为我需要为对话框上的所有选项卡提供一些通用元素和处理程序。