티스토리 뷰
1번
import javax.swing.*;
public class ex1401 extends JFrame {
public ex1401() {
setTitle("실습문제 1번");
createMenu(); // 메뉴 생성, 프레임에 삽입
setSize(250, 200);
setVisible(true);
}
private void createMenu() {
JMenuBar mb = new JMenuBar();
JMenu f = new JMenu("파일");
mb.add(f);
JMenuItem op = new JMenuItem("열기");
f.add(op);
mb.add(new JMenu("편집"));
JMenu bogi = new JMenu("보기");
mb.add(bogi);
bogi.add(new JMenuItem("화면확대"));
bogi.add(new JMenuItem("쪽윤곽"));
mb.add(new JMenu("입력"));
setJMenuBar(mb);
}
public static void main(String[] args) {
new ex1401();
}
}
2번
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
public class ex1401 extends JFrame {
private JLabel iL = new JLabel();
public ex1401() {
setTitle("실습문제 2번");
createMenu(); // 메뉴 생성, 프레임에 삽입
setSize(250, 200);
setVisible(true);
}
private void createMenu() {
JMenuBar mb = new JMenuBar();
JMenu f = new JMenu("파일");
mb.add(f);
JMenuItem op = new JMenuItem("열기");
f.add(op);
op.addActionListener(new OAL());
mb.add(new JMenu("편집"));
JMenu bogi = new JMenu("보기");
mb.add(bogi);
bogi.add(new JMenuItem("화면확대"));
bogi.add(new JMenuItem("쪽윤곽"));
mb.add(new JMenu("입력"));
setJMenuBar(mb);
}
class OAL implements ActionListener{
private JFileChooser chooser;
public OAL() {
chooser = new JFileChooser();
}
public void actionPerformed(ActionEvent e) {
FileNameExtensionFilter flter = new FileNameExtensionFilter("JPG % GIF Images", "jpg", "gif");
chooser.setFileFilter(flter);
int ret = chooser.showOpenDialog(null);
if(ret != JFileChooser.APPROVE_OPTION) {
JOptionPane.showMessageDialog(null, "파일을 선택하지 않았습니다.", "경고", JOptionPane.WARNING_MESSAGE);
return;
}
String fP = chooser.getSelectedFile().getParent();
iL.setIcon(new ImageIcon(fP));
pack();
}
}
public static void main(String[] args) {
new ex1401();
}
}
3번
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
public class ex1401 extends JFrame {
public ex1401() {
super("실습문제 3");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
JToolBar tBar = new JToolBar();
JButton btn = new JButton("종료");
btn.addActionListener(new CloseActionListener());
tBar.add(btn);
c.add(tBar, BorderLayout.NORTH); // 툴바는 반드시 BorderLayout 배치관리자가 있는 컨테이너에 붙여야 함
setSize(400,400);
setVisible(true);
}
class CloseActionListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
int result = JOptionPane.showConfirmDialog(null, "정말 종료하시겠습니까", "옵션팬", JOptionPane.YES_NO_OPTION);
if(result == JOptionPane.CLOSED_OPTION) {
// 사용자가 "예"나 "아니오"의 선택없이 다이얼로그창을닫은 경우
return; // not exited
}
else if(result == JOptionPane.YES_OPTION) {
// 사용자가 "예"를 선택한 경우
System.exit(0);
}
else { // 사용자가 "아니오"를 선택한 경우
return; // not exited
}
}
}
static public void main(String[] arg) {
new ex1401();
}
}
반응형
LIST
'공부합시다 > 찍먹' 카테고리의 다른 글
랜덤 별명 생성하기 (0) | 2021.04.09 |
---|---|
[R] csv 파일 불러오기 (0) | 2021.04.09 |
[혼공자] Chapter 02. 확인문제 (0) | 2021.04.07 |
[JAVA] 이벤트 처리 기법 프로그램 (0) | 2021.04.06 |
[JAVA] TextField와 TextArea에 대한 GUI (0) | 2021.04.05 |
댓글