2024-06-12
This commit is contained in:
57
Writerside2/topics/Top-Level-Containers.md
Normal file
57
Writerside2/topics/Top-Level-Containers.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# 최상위 컨데이너
|
||||
JFrame, JDialog, JApplet 등이 최상위 컨테이너이며, 프로그램 창(윈도우)이라고도 이해할 수 있다.
|
||||
최상위 컨테이너는 시각적 컴포넌트를 위한 영역인 content pane을 가지고 있다.
|
||||
|
||||
## JFrame
|
||||
|
||||
* `getDefaultCloseOperation()` / `setDefaultCloseOperation(int)` : DO_NOTHING_ON_CLOSE | HIDE_ON_CLOSE | DISPOSE_ON_CLOSE | EXIT_ON_CLOSE
|
||||
* `getIconImage()` / `setIconImage(java.awt.Image)`
|
||||
* `getTitle()` / `setTitle(String)`
|
||||
* `isUndecorated()` / `setUndecorated(boolean)`
|
||||
* `isDefaultLookAndFeelDecorated()` / `setDefaultLookAndFeelDecorated(boolean)`
|
||||
|
||||
* `getSize()` / `setSize(int,int)` / `setSize(Dimension)`
|
||||
* `getBounds()` / `setBounds(int,int,int,int)` / `setBounds(Rectangle)` : x, y, width, height
|
||||
* `getLocation()` / `setLocation(int,int)` / `setLocationRelativeTo(Component)`
|
||||
* `pack()`
|
||||
|
||||
* `getContentPane()` / `setContentPnae(Container)`
|
||||
* `getRootPane()` / `setRootPane(JRootPane)` / `createRootPane()`
|
||||
* `getJMenuBar()` / `setJMenuBar(JMenuBar)`
|
||||
* `getGlassPane()` / `setGlassPane(Component)`
|
||||
* `getLayeredPane()` / `setLayeredPane(JLayeredPane)`
|
||||
|
||||
|
||||
```java
|
||||
public static void main(String... args) {
|
||||
// 컨텐트 패널에 버튼 등의 컴포넌트를 구성한다.
|
||||
final JPanel contentPane = new JPanel();
|
||||
contentPane.setBackground(Color.PINK);
|
||||
|
||||
// 프레임을 생성한다.
|
||||
final JFrame jFrame = new JFrame();
|
||||
jFrame.setTitle("Example");
|
||||
jFrame.setSize(800, 600);
|
||||
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
jFrame.setContentPane(contentPane);
|
||||
|
||||
// 이벤트 디스패치 스레드에서 프레임을 표시한다.
|
||||
SwingUtilities.invokeLater(() -> {
|
||||
jFrame.setVisible(true);
|
||||
});
|
||||
}
|
||||
```
|
||||
|
||||
## JDialog
|
||||
|
||||
|
||||
|
||||
## Full-screen Exclusive mode
|
||||
|
||||
```java
|
||||
if(graphicsDevice.isFullScreenSupported()){
|
||||
graphicsDevice.setFullScreenWindow(jFrame);
|
||||
// graphicsDevice.setFullScreenWindow(null); //null to exit
|
||||
}
|
||||
```
|
||||
### DisplayMode
|
||||
Reference in New Issue
Block a user