[문제]
수평 슬라이더를 만들고, 슬라이더를 움직이면 문자열 레이블의 글자 크기를 조절할 수 있는 스윙 응용프로그램을 작성하라.
폰트 크기는 1픽셀에서 100픽셀까지이며, 큰 눈금은 20 간격, 작은 눈금은 5 간격으로 하라.
슬라이더는 컨텐트팬의 NORTH 영역에, 문자열은 CENTER에 부착하라.

코드

import javax.swing.*;
import java.awt.*;
import javax.swing.event.*;

public class Practice07 extends JFrame {
	private JLabel Label = new JLabel("I Love Java");
	private JSlider slider = new JSlider(JSlider.HORIZONTAL, 1, 100, 51);
	
	public Practice07() {
		setTitle("자바실무(11주차실습과제)");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		Container c = getContentPane();
		c.setLayout(new BorderLayout(0,0));
		
		slider.setPaintLabels(true);
		slider.setPaintTicks(true);
		slider.setPaintTrack(true);
		slider.setMajorTickSpacing(20);
		slider.setMinorTickSpacing(5);	
		
		c.add(slider,BorderLayout.NORTH);
		slider.addChangeListener(new MyChangeListener());
		c.add(Label,BorderLayout.CENTER);
		setSize(600,400);
		setVisible(true);
	}
	
	class MyChangeListener implements ChangeListener {
		public void stateChanged(ChangeEvent e) {
			Font font = Label.getFont();
			int fontsize = font.getSize();
			Label.setFont(new Font("Arial",Font.PLAIN,slider.getValue()));
			}
		}
	
	public static void main(String[] args) {
		new Practice07();
		}
	}
}

실행결과

slider-01

slider-02

태그:

Cpp

카테고리:

업데이트:

댓글남기기