JAVA 6 JinHo Jang M S Hanyang Univ
- Slides: 30
JAVA 실습 6주차 Jin-Ho, Jang M. S. Hanyang Univ. HPC&OT Lab. jinhoyo@nate. com HPC & OT Lab. 1
Layout. Manager • Border. Layout – frame이 디폴트로 취하는 Layout • Flow. Layout – Panel의 기본 레이아웃 • Box. Layout – Flow. Layout과 유사하나 수직방향으로 정렬이 가능하다 HPC & OT Lab. #4 - 2
HPC & OT Lab. #4 - 4
Flow. Layout HPC & OT Lab. #4 - 5
Box. Layout HPC & OT Lab. #4 - 6
import javax. swing. *; public class Simple. Gui 1{ public static void main(String[] args){ JFrame frame = new JFrame(); Jbutton = new JButton(“click me”); //프레임과 버튼 생성 frame. set. Default. Close. Operation(Jframe. EXIT_ON_CLOSE); //이렇게 하면 창 닫을때 프로그램이 종료됨 frame. get. Content. Pane(). add(button); //버튼을 프레임의 content pane에 추가함 frame. set. Size(300, 300); //프레임의 크기를 픽셀 단위로 지정 frame. set. Visible(true); //화면에 표시하도록 설정 } } HPC & OT Lab.
#Tip • Subtyping 과 Subclassing의 차이 (interface and abstraction) • Implements(여러개) & extends(1개) HPC & OT Lab. 8
Import javax. swing. *; Import java. awt. event. *; frmae. set. Size(300, 300); frame. set. Visible(true); } Public class Simple. Gui. B implements Action. Listener{ JButton button; public static void main(String[] args){ Simple. Gui. B gui = new Simple. Gui. B(); gui. go(); } public void go(){ JFrame frame = new JFrame(); button = new JButton(“click me”); button. add. Action. Listener(this); public void action. Performed(Action. Event event){ button. set. Text(“I’ve been clicked!!”); } frame. get. Content. Pane(). add(button); frame. set. Default. Close. Operation(Jframe. EXIT_ON_C LOSE); HPC & OT Lab. #4 - 9
HPC & OT Lab. 10
HPC & OT Lab. 11
HPC & OT Lab. 12
HPC & OT Lab. 13
실습 5. Input, Output and State 1. Swing package의 JPanel class와 JFrame class 를 배운다. 2. AWT package의 Graphics class를 배운다. 3. Field Variable과 Scope rule에 대해 배운다. HPC & OT Lab. 14
Swing. Frame. Main. java // Swing 기본창 만들기 import javax. swing. *; class Swing. Frame extends JFrame { // 내용없음 } public class Swing. Frame. Main { public static void main(String[] args) { JFrame f = new Swing. Frame(“Swing 기본창만들기”); f. set. Size(300, 200); f. show(); } } HPC & OT Lab. 15
q Draw. Shapes. java import java. awt. *; import javax. swing. *; 사용자가 직접 호출하는 일 public class Draw. Shapes extends JFrame 은 절대 없다. 이것은 시스템 { public void paint(Graphics g) 에서 직접호출. { g. set. Color(Color. BLACK); g. draw. Oval(10, 30, 20); g. fill. Rect(50, 30, 20); g. draw. Line(90, 50, 100, 30); g. draw. Line(100, 30, 110, 50); g. draw. Line(90, 50, 110, 50); g. draw. String("Hello 홍길동", 10, 70); } HPC & OT Lab. #4 - 17
• Draw. Shapes. java public static void main(String[] args) { Draw. Shapes ds = new Draw. Shapes(); ds. set. Size(120, 80); ds. set. Visible(true); } } 실행결과 HPC & OT Lab. #4 - 18
• Clock. Writer. java import java. awt. *; import javax. swing. *; import java. util. *; public class Clock. Writer extends JPanel { int width=200; public Clock. Writer() { JFrame clocks_frame = new JFrame(); clocks_frame. get. Content. Pane(). add(this); clocks_frame. set. Title("Clock"); clocks_frame. set. Size(width, width); clocks_frame. set. Visible(true); } HPC & OT Lab. #4 - 20
• Clock. Writer. java public void paint. Component(Graphics g) { g. set. Color(Color. white); g. fill. Rect(0, 0, width); Gregorian. Calendar time = new Gregorian. Calendar(); int minutes_angle = 90 - (time. get(Calendar. MINUTE)*6); //0도가 3시방향 int hour_angle = 90 - (time. get(Calendar. HOUR)*30); int left_edge = 50; int top = 50; int diameter = 100; g. set. Color(Color. black); g. draw. Oval(left_edge, top, diameter); g. set. Color(Color. red); g. fill. Arc(left_edge + 5, top + 5, diameter - 10, minutes_angle, 5); HPC & OT Lab. #4 - 21
• Clock. Writer. java g. set. Color(Color. blue); g. fill. Arc(left_edge + 25, top + 25, diameter - 50, hour_angle, -8); } public static void main(String[] args) { new Clock. Writer(); } } 실행결과 HPC & OT Lab. #4 - 22
• Egg. Writer. java import java. awt. *; import javax. swing. *; public class Egg. Writer extends JPanel { private int WIDTH = 300; private int HEIGHT = 200; private Color BACKGROUND_COLOR = Color. yellow; private int egg_width = 600; private int egg_height = 400; public Egg. Writer() { JFrame my_frame = new JFrame(); my_frame. get. Content. Pane(). add(this); my_frame. set. Title("Egg. Writer"); HPC & OT Lab. #4 - 24
• Egg. Writer. java my_frame. set. Size(WIDTH, HEIGHT); my_frame. set. Visible(true); my_frame. set. Default. Close. Operation(JFrame. EXIT_ON_CLOSE); } public void paint. Component(Graphics g) { g. set. Color(BACKGROUND_COLOR); g. fill. Rect(0, 0, WIDTH, HEIGHT); int left_border = 10; int baseline = 190; g. set. Color(Color. pink); g. fill. Oval(left_border, baseline - egg_height, egg_width, egg_height); g. set. Color(Color. black); HPC & OT Lab. #4 - 25
• Egg. Writer. java g. draw. Oval(left_border, baseline - egg_height, egg_width, egg_height); egg_width = egg_width / 2; egg_height = egg_height / 2; } public static void main(String[] args) { new Egg. Writer(); } } HPC & OT Lab. #4 - 26
- Jinho jang
- Jinho jung ucsd
- Blob 영상 다운로드
- Hanyang
- Safetyedu.hanyang
- Safetyedu.hanyang.ac.k
- Jang
- Yeongjin jang
- Jang
- Roger jang
- Jang
- Yeongjin jang
- Jang multimedia
- Jang
- Jumping jang
- Dr helen jang
- Language model
- Ch rahmoune
- (univ. caxias do sul) escolha a alternativa que completa
- Fs.univ.umbb
- Faculté snv constantine
- Univ bayadh
- Univ tln moodle
- Sug grant
- Ohio university lon capa
- Univ constantine 3
- Uta maverick activity center
- Mathematische kostenauflösung beispiel
- Prodoc univ nantes
- Dr abou bekr
- Umbb inim