管理 GUI 状态(创建、编辑、读取模式...)的最佳方法是啥

Posted

技术标签:

【中文标题】管理 GUI 状态(创建、编辑、读取模式...)的最佳方法是啥【英文标题】:What's the best way to manage GUI states (create, edit, read modes...)管理 GUI 状态(创建、编辑、读取模式...)的最佳方法是什么 【发布时间】:2011-12-11 19:53:21 【问题描述】:

客户要求我创建一个工具,让用户可以从数据库中添加/修改/删除/读取内容。可以从 TextBoxes 中读取内容。

我的问题是,为程序的不同状态管理 GUI 锁定/解锁的最佳方法是什么。 IE:如果我处于“插入”模式,则应该启用一些 GUI 元素,而有些则不启用。如果我处于“只读”模式,则应该禁用其中的一堆......等等。

现在我已经在我的 GUI 类中创建了一些方法,应该可以管理它。但是,我猜应该以类似的方式管理状态...

该程序目前是用Java开发的,但是我以前在.Net中遇到过这个问题。

编辑:正如我所见,有些人认为这个问题太笼统了。我正在寻找模式、技术等...

【问题讨论】:

您可以使用 bool 运算符来维护状态,例如添加、编辑和保存模式 听起来像状态设计模式。 en.wikipedia.org/wiki/State_pattern 【参考方案1】:

你的问题太笼统了。

有许多不同的方法可以在 GUI 中保持控件的可见性和启用/禁用状态。只要您使用.Net,我建议您查看Commands in WPF:在这里您可以将控件的启用属性绑定到命令的CanExecute 属性并保持命令的可用性——您的控件将自动反映变化。

【讨论】:

我不是,但这仍然是一个建议,我很感激!

以上是关于管理 GUI 状态(创建、编辑、读取模式...)的最佳方法是啥的主要内容,如果未能解决你的问题,请参考以下文章

自动从 XML 模式创建 GUI

如何为图形或树结构编写 GUI 编辑器

小技巧使用matlab GUI以对话框模式读取文件

Authzforce - 用于策略管理 (PAP) 的现有 GUI

如何使用 Lwiit 资源编辑器创建主题或 GUI?

在 JUCE 中为音频插件使用 GUI 编辑器