我在java中不是那麼好..我在一個項目中工作,在我的項目中程序應該繪製k-map,我用標籤繪製它,它的作品很好..我只想知道是否有任何通過更改標籤的背景顏色來簡單地進行分組。問題是我沒有任何有效的方法..唯一的辦法是使用可能發生的所有概率將它們分組,並將它放在if語句中(我知道它會成爲概率尤其是當變量的數目爲四):(如何在java中的k-map中進行分組?
這樣的(我不會發布這一切)。
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);
}
這實在太差了。例如,您應該將每個JLabel分組在一個列表中,並遍歷此列表 – cheseaux
噢,我的數組可能會在這裏幫助 – 2014-03-29 09:57:01
分組是指標識一個鍵並使用該鍵映射與其關聯的集合。 –