728x90
UI 활용!
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class test extends JFrame {
JButton j = new JButton("Cal");
JLabel jl = new JLabel("계산결과");
test() {
Container c = getContentPane();
c.setLayout(new FlowLayout());
c.add(j);
c.add(jl);
setVisible(true);
// cal 버튼을 눌렀을 때
j.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Aa a = new Aa(); // JDialog
a.setVisible(true);
}
});
}
class Aa extends JDialog {
JTextField f1 = new JTextField(15);
JTextField f2 = new JTextField(15);
JButton j2 = new JButton("ADD");
Aa() {
setLayout(new FlowLayout());
add(new JLabel("두 수 를 더 합 니 다"));
add(f1);
add(f2);
add(j2);
j2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
setVisible(false); //dialog 종료
int sum = Integer.parseInt(f1.getText()) +
Integer.parseInt(f2.getText());
jl.setText(Integer.toString(sum));
}
});
}
}
public static void main(String[] args) {
new test();
}
}
JComboBox
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class test extends JFrame {
String s[] = {"Sonny", "고죠 사토루"};
ImageIcon[] im = {new ImageIcon("C:/Users/Kang/Pictures/쏘니.jfif"),
new ImageIcon("C:/Users/Kang/Pictures/고죠사토루.jfif")
};
JLabel j = new JLabel(im[0]);
test() {
Container c = getContentPane();
c.setLayout(new FlowLayout());
setVisible(true);
JComboBox com = new JComboBox(s);
c.add(j);
c.add(com);
com.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JComboBox c = (JComboBox) e.getSource();
int i = c.getSelectedIndex();
//콤보박스의 선택된 아이템 인덱스 알아내기
j.setIcon(im[i]);
}
});
}
public static void main(String[] args) {
new test();
}
}
계산해서 띄우기 (난수발생)
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class test {
public static void main(String[] args) {
JFrame j = new JFrame();
j.setLayout(new FlowLayout());
int n = (int)(Math.random()*50)+1;
JLabel num = new JLabel(Integer.toString(n));
j.add(num);
j.setVisible(true);
JButton plus=new JButton("+5");
JButton minus=new JButton("-5");
plus.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
plus.setEnabled(false);
minus.setEnabled(true); // minus 버튼 활성화
int n=Integer.parseInt(num.getText());
// 문자열 num을 정수로 바꿈
num.setText(Integer.toString(n+5));
// 정수를 다시 문자열로 변경해서 띄움
}
});
minus.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
minus.setEnabled(false);
plus.setEnabled(true); // plus 버튼 활성화
int n=Integer.parseInt(num.getText());
// 문자열 num을 정수로 바꿈
num.setText(Integer.toString(n-5));
// 정수를 다시 문자열로 변경해서 띄움
}
});
j.add(plus);
j.add(minus);
}
}
728x90
'Library > JFrame' 카테고리의 다른 글
JFrame[Dialog / JBotton[] / Thread + AWT] (0) | 2024.03.19 |
---|---|
JFrame4[SwingConstants/CheckboxSelected/JTextField,Area] (0) | 2024.03.18 |
JFrame3[MouseAdapter/JCheckBox/JRadioButton] (0) | 2024.03.15 |
JFrame2[ActionListener/MouseDragged] (2) | 2024.03.14 |
JFrame[FlowLayout/BorderLayout/MouseClickedEvent] (0) | 2024.03.13 |