0
我正在使用一個簡單的單選按鈕組。然而,我不知道如何初始化單選按鈕,以便我可以將它們添加到if語句中。RadioButton無法解析 - 我如何初始化按鈕?
我創建的按鈕像這樣:
JRadioButton rdbtn_speed1 = new JRadioButton("Speed 1");
rdbtn_speed1.setSelected(true);
buttonGroup_1.add(rdbtn_speed1);
rdbtn_speed1.setBounds(10, 91, 97, 23);
frame.getContentPane().add(rdbtn_speed1);
稍後再試:
if(rdbtn_speed1.isSelected()){
System.out.println("1");
}
else if(rdbtn_speed2.isSelected()){
System.out.println("2");
}
但是,這並不工作,因爲它無法找到rdbtns。 (即:rdbtn_speed1無法解析)我必須重新聲明它們,但目前爲止我沒有發現任何內容。我錯過了什麼人?
這裏是全套:
公共類幀1 {
private JFrame frame;
private JTextField Customer_ID;
private JTextField Destination;
private final ButtonGroup buttonGroup_1 = new ButtonGroup();
/**
* Launch the application.
*/
public static void main(String[] args) throws ClassNotFoundException,SQLException{
Class.forName("com.mysql.jdbc.Driver");
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Frame1 window = new Frame1();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
public Frame1() {
initialize();
}
/**
* Initialize the contents of the frame.
*/
private void initialize() {
frame = new JFrame();
frame.setBounds(100, 100, 450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
JButton btnClickMe = new JButton("Click Me!");
btnClickMe.setBounds(10, 218, 414, 32);
btnClickMe.setFont(new Font("Palatino Linotype", Font.BOLD, 29));
btnClickMe.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
try {
submitSQL();
} catch (ClassNotFoundException | SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
frame.getContentPane().add(btnClickMe);
JLabel lblNewLabel = new JLabel("Shipment Information Input:");
lblNewLabel.setForeground(Color.BLACK);
lblNewLabel.setFont(lblNewLabel.getFont().deriveFont(lblNewLabel.getFont().getStyle() | Font.BOLD));
lblNewLabel.setBounds(10, 11, 226, 20);
frame.getContentPane().add(lblNewLabel);
JLabel lblFirstName = new JLabel("Customer ID:");
lblFirstName.setBounds(10, 42, 103, 14);
frame.getContentPane().add(lblFirstName);
Customer_ID = new JTextField();
Customer_ID.setBounds(107, 39, 86, 20);
frame.getContentPane().add(Customer_ID);
Customer_ID.setColumns(10);
Destination = new JTextField();
Destination.setBounds(107, 60, 86, 20);
frame.getContentPane().add(Destination);
Destination.setColumns(10);
JLabel lblSendingLocation = new JLabel("Destination:");
lblSendingLocation.setBounds(10, 63, 87, 14);
frame.getContentPane().add(lblSendingLocation);
JRadioButton rdbtn_speed1 = new JRadioButton("Speed 1");
rdbtn_speed1.setSelected(true);
buttonGroup_1.add(rdbtn_speed1);
rdbtn_speed1.setBounds(10, 91, 97, 23);
frame.getContentPane().add(rdbtn_speed1);
JRadioButton rdbtn_speed2 = new JRadioButton("Speed 2");
buttonGroup_1.add(rdbtn_speed2);
rdbtn_speed2.setBounds(10, 117, 87, 23);
frame.getContentPane().add(rdbtn_speed2);
JRadioButton rdbtn_speed3 = new JRadioButton("Speed 3");
buttonGroup_1.add(rdbtn_speed3);
rdbtn_speed3.setBounds(10, 143, 87, 23);
frame.getContentPane().add(rdbtn_speed3);
JCheckBox chckbx_international = new JCheckBox("International");
chckbx_international.setBounds(107, 87, 97, 23);
frame.getContentPane().add(chckbx_international);
JCheckBox chckbxOversize = new JCheckBox("Oversized");
chckbxOversize.setBounds(107, 117, 97, 23);
frame.getContentPane().add(chckbxOversize);
JCheckBox chckbx_Hazard = new JCheckBox("Hazardous ");
chckbx_Hazard.setBounds(107, 143, 97, 23);
frame.getContentPane().add(chckbx_Hazard);
}
public void submitSQL() throws ClassNotFoundException,SQLException{
String connectionURL = "jdbc:mysql://localhost:3306/projecttest?autoReconnect=true&useSSL=false";
Connection connection = DriverManager.getConnection(connectionURL, "root", "");
Statement statement = connection.createStatement();
//Table Creation
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime now = LocalDateTime.now();
System.out.println(dtf.format(now)); //2016/11/16 12:08:43
String CID = Customer_ID.getText();
String PDestination = Destination.getText();
if(rdbtn_speed1.isSelected()){
System.out.println("1");
}
else if(rdbtn_speed2.isSelected()){
System.out.println("2");
}
//String insertintosql = "insert into shipment (ShipName, ShipDate) VALUES ('"+name+"','"+dtf.format(now)+"');";
//statement.executeUpdate(insertintosql);
connection.close();
}
}