Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何禁用java swing菜单项?_Java_Swing_Awt - Fatal编程技术网

如何禁用java swing菜单项?

如何禁用java swing菜单项?,java,swing,awt,Java,Swing,Awt,我使用awt制作了一个菜单,并用几个项目填充了该菜单。如何“禁用”菜单项?忍不住要抱怨其他答案:更改菜单项本身的启用状态是可以做到的,因此它们在技术上是正确的。然而,大多数时候这不是一个好主意 menuItemInstance.setEnabled(false); 除了最简单的环境外,管理启用状态在任何情况下都可能变得非常复杂。通常,需要一个专用的状态模型。该状态模型的目标项应该类似于数据(而不是类似于视图)。menuItems(或其他按钮)的理想(因为它是为它设计的:)目标项是操作 简

我使用awt制作了一个菜单,并用几个项目填充了该菜单。如何“禁用”菜单项?

忍不住要抱怨其他答案:更改菜单项本身的启用状态是可以做到的,因此它们在技术上是正确的。然而,大多数时候这不是一个好主意

   menuItemInstance.setEnabled(false);
除了最简单的环境外,管理启用状态在任何情况下都可能变得非常复杂。通常,需要一个专用的状态模型。该状态模型的目标项应该类似于数据(而不是类似于视图)。menuItems(或其他按钮)的理想(因为它是为它设计的:)目标项是
操作


简短版本:用
操作填充菜单
s,然后管理操作的启用,而不是组件。

您使用的是AWT还是Swing?你所有的组件类都是从
J
开始的吗?谢谢,我认为这样做是正确的,我意识到我在错误的地方使用了它。谢谢这是一个简单的环境。我正在制作一个照片编辑器,如果没有照片,我想禁用菜单项。