我正在编写一些代码,我希望尽可能灵活,所以我使用了很多变量,并且我有一个名为username
的字符串变量。我也有一些Jlabel的名称与可能进入username
变量的任何名称相同。如何更改与username
变量中的字符串对应的Jlabel的启用状态?通过使用一个变量来调用它来编辑Jlable?
编辑:对于一些澄清,我有一个散列表,其中包含我想要从用户接受的ID的键。这些键指向name
(字符串)和status
(布尔)变量的对象。对于hashmap中的每个条目,我将添加一个Jlabel来保存该人员的照片。 Jlabels名称将对应于对象中的name
。
编辑:所以首先它检查散列表,看看输入的数字是否与散列表中的某个键匹配。如果它从该对象复制name
到username
然后检查对象的状态。如果status
为假(默认),我希望它将名称与username
相同的Jlabel更改为启用。如果status
为true,则更改为禁用。请记住,我将不得不在稍后使用很多对象和J标记来扩展它。
我的问题是我不能告诉java哪些Jlabel改变,而不使用大量的IF语句。
我在想这样的事情,但它会返回一个编译器错误:“的setEnabled方法(布尔)是未定义String类型”
username.setEnabled(true);
这不是一个如果即时消息只使用1个JLabel,但是我需要为我的哈希映射中的每个对象都有1个Jlabel,那么就不好解决。我可能应该解释得更好一些,所以用户输入一个ID号码到文本框中,它将字符串转换为一个整数,然后检查该整数是否与我的哈希映射中的任何键匹配。如果这样做,然后检查我为与该键相对应的对象所做的状态变量。如果状态为false(默认),我想将其设置为true,反之亦然。每个对象将与包含图片的Jlabel配对。感谢您的帮助。 –
感谢您澄清,但这应该是对您的问题的编辑。 – MasterBlaster
我想告诉java哪个Jlabel要根据'username'变量中的内容来编辑 –