Igor Volodin:
是否有将操作/命令绑定/委托给不同控件的机制?例如,绑定到工具栏中的按钮和上下文菜单项?命令 "模式就很适合。与此同时,还可以通过存储已执行命令的历史记录、保存接收者的初始值来实现撤消/重做机制。 最好还能引入一个模型的概念,由这个或那个控件(模式观察者)来监听。 例如,在用户尚未初始化图表模型之前,所有与图表管理相关的控件都具有禁用视图。这样,在某些情况下就无需直接访问控件及其行为逻辑。
是否有将操作/命令绑定/委托给不同控件的机制?例如,绑定到工具栏中的按钮和上下文菜单项?命令 "模式就很适合。与此同时,还可以通过存储已执行命令的历史记录、保存接收者的初始值来实现撤消/重做机制。 最好还能引入一个模型的概念,由这个或那个控件(模式观察者)来监听。 例如,在用户尚未初始化图表模型之前,所有与图表管理相关的控件都具有禁用视图。这样,在某些情况下就无需直接访问控件及其行为逻辑。
在当前版本的程序库中,某些情况下元素之间的命令交换是通过自定义事件 实现的。下一篇文章将对此进行详细介绍。
至于其他机制,一切都可以协商。在整个系列出版后,您可以仔细阅读该方案的所有项目,并列出一份清单,列出应更改或添加的内容,如果有理由认为这样做会更好/更可靠/更方便等。
我可能误解了你的问题。那你就需要澄清你到底需要得到什么,以及它应该是什么样的。
为什么要使用变量数组?
color m_area_color_array[];
在 CContextMenu() 构造函数中,你需要将 m_item_Ysize 变量默认设置为大于 0 的大小。
新文章 图形界面 II: 分隔线和上下文菜单元件 (第二章)已发布:
在本文中, 我们将会创建分隔线元件. 它可以用作独立的界面元件, 也可以作为许多其他元件的一部分. 之后, 我们就拥有了开发上下文菜单的全部所需, 在本文中会加以详细介绍. 另外, 我们还会对类作必要的扩充, 即用于保存应用程序中图形界面所有元件的指针库.
作者:Anatoli Kazharski