我在Java中不太好。我在一个项目中工作,在我的项目中,程序应该绘制k-map,我用标签绘制了它,它的效果很好。。我只是想知道是否有任何简单的方法通过更改标签的背景色来进行分组。问题是我没有任何有效的方法..我唯一的方法是使用所有可能出现的概率对它们进行分组,并将其放入if语句中!(我知道这将是概率的全部,尤其是当变量的数量是四个):(
像这样(我不会全部发布):
if(lbl1.getText().equals("1")&& lbl2.getText().equals("")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("")&& lbl6.getText().equals("")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl1.setOpaque(true);
lbl1.setBackground(Color.blue);
}
else if(lbl1.getText().equals("")&& lbl2.getText().equals("1")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("")&& lbl6.getText().equals("")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl2.setOpaque(true);
lbl2.setBackground(Color.blue);
}
else if(lbl1.getText().equals("")&& lbl2.getText().equals("")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("1")&& lbl6.getText().equals("")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl5.setOpaque(true);
lbl5.setBackground(Color.blue);
}
else if(lbl1.getText().equals("")&& lbl2.getText().equals("")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("")&& lbl6.getText().equals("1")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl6.setOpaque(true);
lbl6.setBackground(Color.blue);
}
else if(lbl1.getText().equals("1")&& lbl2.getText().equals("1")&&lbl3.getText().equals("")&& lbl4.getText().equals("")&&lbl5.getText().equals("")&& lbl6.getText().equals("")
&&lbl7.getText().equals("")&& lbl8.getText().equals("")&&lbl9.getText().equals("")&& lbl10.getText().equals("")&&lbl11.getText().equals("")&& lbl12.getText().equals("")
&&lbl13.getText().equals("")&& lbl14.getText().equals("")&&lbl15.getText().equals("")&&lbl16.getText().equals("")){
lbl1.setOpaque(true);
lbl1.setBackground(Color.blue);
lbl2.setOpaque(true);
lbl2.setBackground(Color.blue);
}
具有所有名为的16个标签的数组(或列表)labels
,类似于:
for (final JLabel label : labels) {
// reset others?
if ("1".equals(label.getText()) {
label.setOpaque(true);
label.setBackground(Color.blue);
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句