본문 바로가기

프로그램언어

스윙 컴포넌트의 공통 메소드2 JLabel, 레이블 컴포넌트 JLabel은 문자열이나 이미지를 스크린에 출력하는 레이블 컴포넌트를 만드는 클래스이다. 레이블 컴포넌트 생성 레이블 컴포넌트는 레이블이라고도 부르며, 다음 생성자를 이용하여 생성한다. JLable() 빈생성자 JLable(Icon image) 이미지 레이블 JLable(String text) 문자열 레이블 JLable(String text, Icon image, int hAlign) 문자열과 이미지를 모두 가진 레이블 hAlign : 수평 정렬(SwingConstants.LEFT, SwingConstants.RIGHT, SwingConstants.CENTER ) 문자열 레이블 생성예 JLabel textLabel = new JLabel("사랑합니다."); 이미지 레이블 생.. 더보기
스윙 컴포넌트의 공통 메소드1 스윙 컴포넌트의 공통 메소드 JComponent에는 모든 스윙 컴포넌트를 상속받는 공통 메소드와 상수들이 작성되어 있다. 컴포넌트의 모양과 관련된 메소드 void setForeground(Color) 전경색 설정 void setBackground(Color) 배경색 설정 void setOpaque(boolean) 불투명성 설정 void setFont(Font) 폰트 설정 Font getFont() 폰트 리턴 컴포넌트의 상태와 관련된 메소드 void setEnabled(boolean) 컴포넌트 활성화/비활성화 void setVisible(boolean) 컴포넌트 보이기/숨기기 boolean isVisible() 컴포넌트의 보이는 상태 리턴 컴포넌트의 위치와 크기에 관련된 메소드 int getWidth() .. 더보기
이벤트 리스너 예제3 마우스 이벤트 Mouse 이벤트의 리스너와 메소드 Mouse 이벤트가 발생하는 경우 리스너의 메소드 리스너 마우스가 컴포넌트 위에 올라갈 때 void mouseEntered(MouseEvent e) MouseListener 마우스가 컴포넌트에서 내려올 때 void mouseExited(MouseEvent e) MouseListener 마우스 버튼이 눌러졌을 때 void mousePressed(MouseEvent e) MouseListener 눌러진 버튼이 떨어질 때 void mouseReleased(MouseEvent e) MouseListener 마우스로 컴포넌트를 클릭하였을 때 void mouseClicked(MouseEvent e) MouseListener 마우스가 드래그되는 동안 void mous.. 더보기
이벤트 리스너 예제2 KeyEvent와 KeyListener 컴포넌트에 키 이벤트 리스너를 등록하기 위해서는 다음과 같이 addKeyListener()메소드를 이용한다. component.addKeyListener(myKeyListener) Key 이벤트가 발생하는 경우 KeyListener의 메소드 리스너 키를 누르는 순간 void keyPressed(KeyEvent e) KeyListener 누른 키를 떼는 순간 void keyReleased(KeyEvent e) KeyListener 누른 키를 떼는 순간 (유니코드 키 경우에만 적용) void keyTyped(KeyEvent e) KeyListener 입력된 키 판별 키 이벤트가 발생하면 입력된 키 정보가 KeyEvent 객체에 담겨져 리스너에게 전달된다. KeyEven.. 더보기
이벤트 리스너 예제1 독립 클래스로 Action 이벤트의 리스너 작성 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class IndepClassListener extends JFrame { public IndepClassListener() { setTitle("Action 이벤트 리스너 예제"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container c = getContentPane(); c.setLayout(new FlowLayout()); JLabel label1 = new JLabel("버튼을클릭하면'Action'에서'액션'으로변경"); JLabel label2 = new JLabel(.. 더보기
이벤트 처리하기 이벤트 기반 프로그래밍 이벤트 기반의 응용프로그램은 각 이벤트를 처리하는 이벤트 리스너(event listener)들을 보유하며, 이벤트가 발생할 때마다 리스너가 실행된다. 이벤트는 키입려, 마우스 클릭, 마우스 드래그등 사용자의 액션으로 발생한다. 이벤트 객체란? 이벤트 객체는 현재 발생한 이벤트에 관한 정보를 가진 객체이며, 이벤트 리스너에게 전달된다. 모든 이벤트 객체들은 java.util.EventObject 클래스를 상속받으며, java.awt.event와 javax.swing.event 패키지에 구현되어 있다. 응용프로그램은 이벤트를 처리하기 위해 반드시 import 문을 포함해야 한다. import java.awt.event.*; // 이벤트 처리가 필요한 모든 소스에 포함 import ja.. 더보기
GUI문제1 1. 아래 그림과 같은 스위 프로그램을 작성하시오.( 크기는 400 * 300, 배경색은 노랑색 ) 2. 아래그림과 같이 프로그램을 작성하시오.(배경색(rgb : 255, 255, 204)) 더보기 소스코드 import javax.swing.*; import java.awt.*; public class FlowLayoutEx extends JFrame { public FlowLayoutEx() { setTitle("배경색과 버튼만들기"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Color rgb = new Color(255,255,205); Container c = getContentPane(); c.setBackground(rgb); c.setLayout(.. 더보기
컨테이너와 배치 컨테이너와 배치 컨테이너에 부작되는 컴포넌트들의 위치와 크기는 컨테이너 내부에 있는 배치관리자에 의해 결정된다. 배치관리자는 컨테이너에 컴포넌트가 부착되는 시점에 컴포넌트의 위치와 크기를 결정한다. 배치관리자의 4가지 종류 FlowLayout 왼쪽에서 오른쪽으로 컴포넌트를 배치하며, 오른쪽에 더 이상 배치할 공간이 없으면 아래로 내려와서 다시 왼쪽에서 오른쪽으로 배치한다. import javax.swing.*; import java.awt.*; public class FlowLayoutEx extends JFrame { public FlowLayoutEx() { setTitle("FlowLayout 만들기"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 프.. 더보기