본문 바로가기

728x90
반응형

Java

[java]이것이 자바다 부록 Java UI 12-3 (Swing을 이용한 색상 다이얼로그) (4) 색상 다이얼로그 ▷ 색상을 사용자가 선택할 수 있음, 색상 다이얼로그는 JColorChooser를 제공 ▶ showDialog() 메소드를 이용해서 색상 다이얼로그 띄움 ◎ 색상 다이얼로그에서 선택한 색상을 버튼의 배경색으로 설정하는 예제 import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JColorChooser; import javax.swing.JFrame; import javax.swing.SwingUtilities; public class.. 더보기
[java]이것이 자바다 부록 Java UI 12-2 (Swing을 이용한 파일 다이얼로그) (3) 파일 다이얼로그 ▷ 사용자가 파일을 선택할 때 사용, Swing에서는 JFileChooser를 제공 ▷ showOpenDialog ( )와 showSaveDialog ( ) 메소드를 이용해 열기와 저장용 파일 다이얼로그를 띄울 수 있음 ▷ 파일 다이얼로그의 기본 디렉토리 위치는 사용자의 홈 디렉토리, 변경하고 싶다면 setCurrentDirectory() 메소드 이용 jFileChooser.setCurrentDirectory(new File("C:/Temp")); ▷ showOpenDialog()와 showSaveDialog() 메소드는 모두 int 값을 리턴 ◎ showOpenDialog()와 showSaveDialog() 메소드의 버튼 구분을 위한 상수 NO 옵션 상수 설명 1 APPROVE_.. 더보기
[java]이것이 자바다 부록 Java UI 12-1 (Swing을 이용한 표준화된 다이얼로그) (2) 표준화된 다이얼로그 ▷ Swing은 자주 사용되는 표준화된 다이얼로그(MessageDialog, ConfirmDialog, InputDialog, OptionDialog)를 쉽게 생성하기 위해 JOptionPane 클래스를 제공한다. ◎ JOptionPane의 메소드 NO 메소드 다이얼로그 다이얼로그 모양 1 showMessageDialog( … ) 텍스트 메시지[확인] 2 showConfirmDialog( … ) 텍스트 메시지[확인][취소] [예][아니오][취소] [예][아니오] 3 showInputDialog( … ) 입력 컴포넌트 [확인] [취소] 4 showOptionDialog( … ) 텍스트 메시지 [사용자 정의 버튼] ◎ showXXXDialog() 메소드의 매개변수 NO 매개변수 설.. 더보기
[java]이것이 자바다 부록 Java UI 12 (Swing을 이용한 다이얼로그) 1. 다이얼로그 ▷ 주 윈도우에서 사용자의 선택 또는 입력을 위해서 띄우는 서브 윈도우이다. ▷ 다이얼로그를 띄우는 주 윈도우를 부모 윈도우 또는 소유자 윈도우라고 한다. ▷ 모달 다이얼로그 : 다이얼로그를 닫기 전까지 부모 윈도우를 사용할 수 없는 다이얼로그 ▷ 모달리스 다이얼로그 : 부모 윈도우를 계속 사용할 수 있는 다이얼로그 ▷ 다이얼로그의 기본은 모달(JDialog)을 제공, 프로그램에서 자주 사용되는 표준화된 다이얼로그도 제공 ▷ 다이얼로그를 띄울 때는 소유자 윈도우(JWindow, JFrame, JDialog 등)가 반드시 필요 (1) 사용자 정의 다이얼로그 ▷ 사용자 정의 다이얼로그를 만들기 위해서는 JDialog를 상속해야 한다. ▷ 생성자는 소유자 윈도우를 받도록 선언, 소유자 윈도우를.. 더보기
[java]이것이 자바다 부록 Java UI 11 (Swing을 이용한 툴바 컴포넌트) 1. 툴바 컴포넌트 툴바는 메뉴바 아래에 위치하고 주로 버튼들이 배치되는 컨테이너이다. 메뉴보다는 빠르게 원하는 기능을 마우스로 선택할 수 있기 때문에 사용자들은 메뉴보다는 툴바를 더 선호한다. Swing은 툴바 생성을 위해서 다음과 같은 컴포넌트를 제공하고 있다. NO 컴포넌트 설명 1 JToolBar 툴바 생성을 위한 컴포넌트 2 JToolBar.Separator 버튼들을 그룹 짓기 위해 공백을 제공하는 컴포넌트 ◎ 툴바 버튼을 클릭시 어떤 버튼이 클릭되었는지 메시지로 알려주는 예제 import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.I.. 더보기
[java]이것이 자바다 부록 Java UI 10 (Swing을 이용한 메뉴 컴포넌트) 1. 메뉴 컴포넌트 ▷ 메뉴는 빠질 수 없는 구성 요소, Swing은 메뉴 생성을 위해 컴포넌트를 javax.swing 패키지에서 제공 NO 컴포넌트 설명 1 JMenuBar 메뉴바 컴포넌트 2 JMenu 주 메뉴 및 자식 메뉴 아이템을 갖는 서브 메뉴 컴포넌트 3 JPopupMenu 팝업 메뉴 컴포넌트 4 JMenuItem 메뉴 아이템 컴포넌트 5 JCheckBoxMenuItem JCheckBox로 선택할 수 있는 메뉴 아이템 컴포넌트 6 JRadioButtonMenuItem JRadioButton으로 선택할 수 있는 메뉴 아이템 컴포넌트 7 JSeparator 메뉴를 수직 또는 수평으로 분리시키는 컴포넌트 ◎ 각 컴포넌트의 사용 위치를 그림으로 표시 (1) 메뉴 생성 ▷ 가장 먼저 JMenuBar를 .. 더보기
[java]이것이 자바다 부록 Java UI 9 (Swing을 이용한 트리 컴포넌트) 1. 트리 컴포넌트 ▷ 계층적인 데이터를 표시하는 컴포넌트, Swing은 트리 컴포넌트로 JTree를 제공 ▷ 하나의 루트 노드 아래에 여러 개의 자식 노드를 가지며, 자식 노드는 또 다시 자식 노드를 가질 수 있음 ▷ 동일한 부모 노드를 갖는 노드들을 묶어서 형제 노드라고 부르며, 자식 노드가 없는 마지막 노드는 잎사귀 노드(리프 노드)라고 함 (1) 트리 생성 ▷ 생성자의 매개값으로 루트 노드를 대입해야 하는데, 루트 노드는 DefaultMutableTreeNode로 생성 ▷ 부모 노드, 리프 노드를 생성하는데도 사용 ◎ 기본적인 노드 모양 나타내는 예제 import java.awt.BorderLayout; import javax.swing.JFrame; import javax.swing.JScrol.. 더보기
[java]이것이 자바다 부록 Java UI 8-1 (Swing을 이용한 테이블 컴포넌트 2) (4) 이벤트 처리 ▷ MouseEvent가 발생하므로 MouseListener를 등록해서 이벤트를 처리할 수 있음 ▷ getSelectedColumn(), getSelectedRow() 메소드를 이용해 어떤 컬럼과 행에서 클릭되었는지 알아낼 수 있음 import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swi.. 더보기

728x90
반응형