求解答!!界面已經寫出來了,就是事件沒有寫出來,寫到一半出問題了,謝謝!!!
uj5u.com熱心網友回復:
package csdn;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
@SuppressWarnings("serial")
public class DataTransfer extends JFrame{
private JLabel label1 = null;
private JTextField tf1 = null;
private JRadioButton rBtn1 = null;
private JRadioButton rBtn2 = null;
private JRadioButton rBtn3 = null;
private JRadioButton rBtn4 = null;
private JLabel label2 = null;
private JTextField tf2 = null;
private JRadioButton rBtn5 = null;
private JRadioButton rBtn6 = null;
private JRadioButton rBtn7 = null;
private JRadioButton rBtn8 = null;
String str1,str2;
private JButton btn1 = null;
private JButton btn2 = null;
private JPanel panel0 = new JPanel();
private JPanel panel1 = new JPanel();
private JPanel panel2 = new JPanel();
private JPanel panel3 = new JPanel();
private JPanel panel4 = new JPanel();
private JPanel panel5 = new JPanel();
private JPanel panel6 = new JPanel();
private JPanel panel7 = new JPanel();
public DataTransfer(){
super();
this.setTitle("Gui實驗題");
this.setBounds(100, 100, 400, 400);
panel0.setLayout(new GridLayout(7, 1));
this.setContentPane(panel0);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.componentInit();
this.addActionListener();
this.setVisible(true);
}
/**
* 動作監聽
*/
private void addActionListener() {
btn1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if (rBtn1.isSelected()) {
if (rBtn5.isSelected()) {//2
tf2.setText(tf1.getText());
} else if(rBtn6.isSelected()){//8
str1 = tf1.getText();
int i = Integer.valueOf(str1, 2);
str1 = Integer.toOctalString(i);
tf2.setText(str1);
} else if(rBtn7.isSelected()){//10
str1 = tf1.getText();
int i = Integer.valueOf(str1, 2);
str1 = Integer.toString(i);
tf2.setText(str1);
} else if(rBtn8.isSelected()){//16
str1 = tf1.getText();
int i = Integer.valueOf(str1, 2);
str1 = Integer.toHexString(i);
tf2.setText(str1);
}
} else if(rBtn2.isSelected()){
if (rBtn5.isSelected()) {//2
str1 = tf1.getText();
int i = Integer.valueOf(str1, 8);
str1 = Integer.toBinaryString(i);
tf2.setText(str1);
} else if(rBtn6.isSelected()){//8
tf2.setText(tf1.getText());
} else if(rBtn7.isSelected()){//10
str1 = tf1.getText();
int i = Integer.valueOf(str1, 8);
str1 = Integer.toString(i);
tf2.setText(str1);
} else if(rBtn8.isSelected()){//16
str1 = tf1.getText();
int i = Integer.valueOf(str1, 8);
str1 = Integer.toHexString(i);
tf2.setText(str1);
}
} else if(rBtn3.isSelected()){
if (rBtn5.isSelected()) {//2
str1 = tf1.getText();
int i = Integer.valueOf(str1);
str1 = Integer.toBinaryString(i);
tf2.setText(str1);
} else if(rBtn6.isSelected()){//8
str1 = tf1.getText();
int i = Integer.valueOf(str1);
str1 = Integer.toOctalString(i);
tf2.setText(str1);
} else if(rBtn7.isSelected()){//10
tf2.setText(tf1.getText());
} else if(rBtn8.isSelected()){//16
str1 = tf1.getText();
int i = Integer.valueOf(str1);
str1 = Integer.toHexString(i);
tf2.setText(str1);
}
} else if(rBtn4.isSelected()){
if (rBtn5.isSelected()) {//2
str1 = tf1.getText();
int i = Integer.valueOf(str1, 16);
str1 = Integer.toBinaryString(i);
tf2.setText(str1);
} else if(rBtn6.isSelected()){//8
str1 = tf1.getText();
int i = Integer.valueOf(str1, 16);
str1 = Integer.toOctalString(i);
tf2.setText(str1);
} else if(rBtn7.isSelected()){//10
str1 = tf1.getText();
int i = Integer.valueOf(str1, 16);
str1 = Integer.toString(i);
tf2.setText(str1);
} else if(rBtn8.isSelected()){//16
tf2.setText(tf1.getText());
}
}
}
});
btn2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
}
/**
* 添加組件
*/
private void componentInit() {
////////////////////////////
label1 = new JLabel("資料轉換");
label1.setForeground(Color.RED);
label1.setFont(new Font("仿宋",Font.BOLD,30));
panel1.add(label1, BorderLayout.CENTER);
//////////////////////////////////////
tf1 = new JTextField(30);
panel2.add(tf1, BorderLayout.CENTER);
//////////////////////////////////////
ButtonGroup bg1 = new ButtonGroup();
rBtn1 = new JRadioButton("2");
rBtn2 = new JRadioButton("8");
rBtn3 = new JRadioButton("10");
rBtn3.setSelected(true);
rBtn4 = new JRadioButton("16");
bg1.add(rBtn1);
bg1.add(rBtn2);
bg1.add(rBtn3);
bg1.add(rBtn4);
panel3.add(rBtn1);
panel3.add(rBtn2);
panel3.add(rBtn3);
panel3.add(rBtn4);
//////////////////////////////////////
label2 = new JLabel("轉換成==>>");
label2.setForeground(Color.BLUE);
label2.setFont(new Font("仿宋",Font.BOLD,30));
panel4.add(label2, BorderLayout.CENTER);
//////////////////////////////////////
tf2 = new JTextField(30);
panel5.add(tf2, BorderLayout.CENTER);
//////////////////////////////////////
ButtonGroup bg2 = new ButtonGroup();
rBtn5 = new JRadioButton("2");
rBtn6 = new JRadioButton("8");
rBtn7 = new JRadioButton("10");
rBtn8 = new JRadioButton("16");
rBtn8.setSelected(true);
bg2.add(rBtn5);
bg2.add(rBtn6);
bg2.add(rBtn7);
bg2.add(rBtn8);
panel6.add(rBtn5);
panel6.add(rBtn6);
panel6.add(rBtn7);
panel6.add(rBtn8);
//////////////////////////////////////
btn1 = new JButton("OK");
btn2 = new JButton("Exit");
panel7.add(btn1);
panel7.add(btn2);
//////////////////////////////////////
panel0.add(panel1, new GridLayout(0, 1));
panel0.add(panel2, new GridLayout(1, 1));
panel0.add(panel3, new GridLayout(2, 1));
panel0.add(panel4, new GridLayout(3, 1));
panel0.add(panel5, new GridLayout(4, 1));
panel0.add(panel6, new GridLayout(5, 1));
panel0.add(panel7, new GridLayout(6, 1));
}
public static void main(String[] args) {
new DataTransfer();
}
}
uj5u.com熱心網友回復:
謝謝!轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/55170.html
標籤:Java相關
