-1
我想製作一個java GUI程序「遊戲」。切換按鈕標題遊戲
有五個按鈕,每個按鈕都有一個字符作爲按鈕標題。當點擊一個按鈕時,該按鈕的標題與右邊的鄰居交換。如果最右邊的按鈕被點擊,那麼最左邊的按鈕有這個標題,所以它們都會切換(它包裹着)。
目標是讓他們按字母順序排列,從而結束遊戲。
我想不出一個直觀的方式來讓字符切換而不必製作五個按鈕。
String str = "abcde"; // DEBUG ARGUMENT STRING
setCaptions(str);
方法來獲取字符串,創建一個字符數組了他們,並創建按鈕...
void setCaptions(String string){
char[] charArray = string.toCharArray();
ArrayList<Character> arrList = new ArrayList<Character>();
for (int x=0; x < charArray.length; x++) {
String str = Character.toString(charArray[x]);
btn = new JButton(str);
btn.setFont(myFont);
pane.add(btn, "LR");
btn.addActionListener(new SwitchAction());
arrList.add(str.charAt(0));
}
// check the order...
System.out.print(arrList);
if (arrList.get(0) < arrList.get(1)
&& arrList.get(1) < arrList.get(2)
&& arrList.get(2) < arrList.get(3)
&& arrList.get(3) < arrList.get(4)) {
lbl.setText("SOLVED");
}
}
的ActionListener切換字幕,我想不通...
public class SwitchAction implements ActionListener {
public void actionPerformed(ActionEvent evt) {
String a = btn.getText();
System.out.println(evt.getActionCommand() + " pressed"); // debug
// something goes here...
}
}