0

我对 Visual Studio 2008 和 MFC 的一个小问题感到很生气。我实际上正在开发一个项目,并且正在尝试创建一个 SDI 应用程序。对,现在我想添加一个可停靠的 DialogBar。好吧,我第一次使用资源视图添加它时,我可以毫无问题地创建栏。但是...我想添加一些控件,例如几个 ListBox、按钮等。该程序不允许我为这些控件创建成员变量。该选项显示为灰色。

搜索了一下,我发现必须创建一个派生自 CDialogBar 的新类并使用消息处理程序等“增强”它。我一直在阅读一些教程,但它对我不起作用。

你能帮我么?我开始感到紧张,在我的设计中必须使用对话框栏,而我以前从未实现过它们。

非常感谢,并为我糟糕的英语感到抱歉。

4

1 回答 1

1

您可以手动添加控制成员变量,而不是使用向导。只需调用对话框栏的 DoDataExchange 函数中的 DDX_Control。

但 CDialogBar 派生类不处理控件单击。CDialogBar 类将所有这些消息转发到对话框栏的父窗口。所以准备将消息处理程序添加到父级(通常是 CMainFrame)。

出于学习目的,您可以先尝试将对话栏创建为 CDialog,以查看向导提供的正确代码行和消息映射条目。然后,您可以根据需要将这些详细信息复制/移动到您的实际代码项目中。

于 2013-05-27T23:58:38.253 回答