SSISO Community

시소당

revalidate()

Layout  Management  에  대해서  알아보자  

배치관리자란  컴포넌트의  크기  및  위치를  결장하는  것  

하나의  container는  배치관리를  수행하는  하나의  객체를  가진다.  

자바에서는  7가지  배치  관리자를  제공한다.    

BorderLayout  ,  BoxLayout  ,  FlowLayout  ,  GridLayout  ,  GridBagLayout  ,  CardLayout  ,  SpringLayout  

참조  :http://java.sun.com/docs/books/tutorial/uiswing/layout/visual.html  

각  배치관리자  마다  나름대로의  특성이  있따.  자세한건  java.sun.com의  API를  참조하자.  

공통적인  배치관리  작업  

->컨테이너의  배치관리자  설정  

->컴포넌트가  컨테이너에게  자신의  크기  및  정렬에  대한  힌트  제공  (container가  요구하는  크기를  참조한다.  요구에  따르지는  않는다)  

->컴포넌트  사이의  간격(space)  설정  (component  사이의    간격에  영향을  주는  3가지  요소!!)  

-배치관리자의  일부는  자동  설정  ,  일부는  명시할수  있도록  한다.  

-페인팅  되지  않으나  공간을  차지하는  invisible  component  

-Empty  border  

컨테이너.setLayout(배치관리자);  

컴포넌트.setPreferredSize(dimesion  객체);  

컴포넌트.setAlignmentX(x좌표);  

컴포넌트.setAlignmentX(y좌표);  

이번에는  Event  Handling에  대해서  알아보자.  

버튼이  눌러지면  그것을  인지  하고  어떠한  조치를  취해야한다.  

사용자가  버튼을  누르면  그  component에서  알아채고  사건이  일어났다고  event  source(객체)를  내보낸다.  

이러한  event  source를  처리할  것을  만들어야  하는데  이것을  Listener라고  한다.  그래서  이러한  이벤트들을  처리하도록  하는것을  리스너를  등록한다고  한다.  하나의  이벤트  소소는  여러개의  event  listener를  가질  수  있으며  그  역도  가능하다.  

Event  Listener의  구현  절차  

1)적적한  리스너  인터페이스를  구현한다.
2)Event  handler를  component의  리스너로  등록한다.

Painting은  무엇일까?  

컴포넌트를  화면에  그리는것을  말한다.

컴포넌트는  필요시  자신을  repaint한다.

컴포넌트  위치  크기가  자동  조절되지  않을  경우  repaint()  호출전에  revalidate()를  호출한다.

1114 view

4.0 stars