0
我應該使用GUI創建一個簡單的乘法表,並且在大多數情況下,它正在做它應該做的事情。但我只是無法弄清楚它的底部,如果你點擊一個特定的按鈕,文本會說出這兩個數字相乘和答案。一個簡單的GUI乘法表
無論我點擊哪個按鈕,它只會告訴我輸入的數字並將它們相乘。這裏是我的代碼:
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JOptionPane;
public class MultiplicationTable {
int clickedCount;
int rowCount;
int colCount;
JFrame frame;
JPanel buttonPanel, countPanel;
JLabel countLabel;
private void createAndShowGui(){
rowCount = Integer.parseInt(JOptionPane
.showInputDialog("How many rows do you want your multiplication table to be? "));
colCount = Integer
.parseInt(JOptionPane
.showInputDialog("How many columns do you want your multiplication table to be? "));
frame = new JFrame ("Simple Multiplication Table");
frame.setLayout(new BorderLayout());
buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(rowCount, colCount));
countPanel = new JPanel();
countLabel = new JLabel("? x ? = ?");
for(int rowCounter = 1; rowCounter <= rowCount; rowCounter++)
for(int colCounter = 1; colCounter <= colCount; colCounter++){
final JButton j = new JButton(Integer.toString(rowCounter * colCounter));
j.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent event) {
for(int rc = 1; rc <= rowCount; rc++)
for(int cc = 1; cc <= colCount; cc++){
countLabel.setText(rc + " x " + cc + " = " + String.valueOf(rc * cc));
}
}
});
buttonPanel.add(j);
}
frame.add(buttonPanel, BorderLayout.NORTH);
countPanel.add(countLabel);
frame.add(countPanel, BorderLayout.SOUTH);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args){
MultiplicationTable c = new MultiplicationTable();
c.createAndShowGui();
}
}
什麼你真的希望看到申請呢? –