【发布时间】:2013-10-31 09:02:04
【问题描述】:
我在 MFC C++ 应用程序中有一个文档。我需要从代码(不是资源)中的特定CMFCToolbar 中完全删除一个按钮,甚至阻止用户通过工具栏自定义对话框恢复按钮。目前我使用CMFCToolbar 的RemoveButton 方法,但它只会使按钮不可见,并且可以通过工具栏自定义对话框恢复,这对我来说不是一个选项。如果您提出一些可以帮助我的建议,我将非常高兴。
【问题讨论】:
我在 MFC C++ 应用程序中有一个文档。我需要从代码(不是资源)中的特定CMFCToolbar 中完全删除一个按钮,甚至阻止用户通过工具栏自定义对话框恢复按钮。目前我使用CMFCToolbar 的RemoveButton 方法,但它只会使按钮不可见,并且可以通过工具栏自定义对话框恢复,这对我来说不是一个选项。如果您提出一些可以帮助我的建议,我将非常高兴。
【问题讨论】:
CMFCToolBar 中有两个内部列表,用于在自定义时重置按钮。 它们被命名为 m_OrigButtons 和 m_OrigResetButtons。
您可能需要派生自己的类并从那里删除具有特定 ID 的按钮。
但更好的是:永远不要在第一次创建工具栏时包含这样的按钮!
【讨论】: