我需要創建一個Suduku遊戲板看起來像這樣:數獨貴問題
這裏有我需要爲這項任務的要求,但我有一些問題。
使用兩個循環來繪製文本字段,而不是列出81個文本字段的蠻力。你應該這樣做:
for (int k = 1; k <= 9; k++) { JPanel level2 = new JPanel(); …. for (int i = 1; i <= 9; i++) { JTextField text = new JTextField(); … } gridPanel.add(level2); }
我需要2個班 名爲
TestSudoku
的應用程序的類以及名爲SudokuLayout
工作類。實現以下可視化小工具併爲它們編寫監聽器。這些小工具具有以下行爲:
- 按鈕「重置」---單擊該按鈕時,程序將清除文本區域,然後將字符串「Reset button clicked!」輸出到文本區域。
- 按鈕「提示」---當按鈕被點擊時,程序將清除文本區域,然後將字符串「點擊提示按鈕!」輸出到文本區域。
- Combobox「難度」---選擇一個項目時,程序將清除文本區域,然後將所選項目名稱輸出到文本區域。
實現使用鬆耦合方法(私有偵聽器類或專用適配器類)的偵聽器。
這是我目前有..
import javax.swing.*;
import javax.swing.border.Border;
import java.awt.*;
public class SudokuLayout extends JFrame {
public SudokuLayout() {
JPanel board = new JPanel(new GridLayout(9, 9));
add(board);
JPanel[][] squares = new JPanel[9][9];
Border border = BorderFactory.createLineBorder(Color.BLACK);
for (int row = 1; row < 9; row++) {
for (int col = 1; col < 9; col++) {
squares[row][col] = new JPanel();
board.add(squares[row][col]);
}
}
JPanel menu = new JPanel();
menu.add(new JButton("Reset"));
menu.add(new JButton("Hint"));
menu.add(new JButton("Solve"));
menu.add(new JButton("New Puzzle"));
add(menu);
}
public static void main(String[] args) {
/** Create a frame and set its properties*/
JFrame frame = new SudokuLayout();
frame.setTitle("Sudoku");
frame.setSize(600, 600);
frame.setLocationRelativeTo(null); //Center the frame
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
的問題是,我目前的版本,右鍵菜單水平顯示,我看不出網格。而且,我不知道如何添加輸出區域。
'但我有一些問題' - 你有什麼問題? –
無法找出網格或選擇難度。我也不確定如何將按鈕移動到一邊。 –
然後將其添加到問題中,明確說明您的問題以及您想要的幫助。就目前而言,你的問題僅僅是你想要做什麼的陳述。 –