티스토리 뷰

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
댓글
링크
공지사항
최근에 올라온 글