解答例 - 実習課題3 - 5.レイアウト・マネージャー2
(実習課題3)
以下のサンプルプログラムを作成しなさい。
- ウィンドウを表示する。
- ウィンドウに配置するコンポーネントは任意。ただし3つ以上、配置する事。
- レイアウト・マネージャーは「BoxLayout」を使用すること。縦方向・横方向のどちらに配置するかは任意。
解答例
package com.techscore.ui.chapter5.exercise3; /** * BoxLayoutFrame.java * TECHSCORE Javaユーザインタフェース5章 実習課題3 * * Copyright (c) 2004 Four-Dimensional Data, Inc. */ import java.awt.Color; import java.awt.Dimension; import javax.swing.BoxLayout; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.SwingConstants; public class BoxLayoutFrame extends JFrame { public BoxLayoutFrame() { super("Box Layout"); setDefaultCloseOperation(EXIT_ON_CLOSE); //BoxLayoutの作成 BoxLayout layout = new BoxLayout(getContentPane(), BoxLayout.Y_AXIS); getContentPane().setLayout(layout); Dimension size = new Dimension(100, 50); //ラベルを4つ配置 JLabel first = new JLabel("first", SwingConstants.CENTER); first.setForeground(Color.red); first.setMaximumSize(size); first.setMinimumSize(size); first.setPreferredSize(size); getContentPane().add(first); JLabel second = new JLabel("second", SwingConstants.CENTER); second.setForeground(Color.yellow); second.setMaximumSize(size); second.setMinimumSize(size); second.setPreferredSize(size); getContentPane().add(second); JLabel third = new JLabel("third", SwingConstants.CENTER); third.setForeground(Color.blue); third.setMaximumSize(size); third.setMinimumSize(size); third.setPreferredSize(size); getContentPane().add(third); JLabel forth = new JLabel("forth", SwingConstants.CENTER); forth.setForeground(Color.green); forth.setMaximumSize(size); forth.setMinimumSize(size); forth.setPreferredSize(size); getContentPane().add(forth); pack(); } public static void main(String args[]) { new BoxLayoutFrame().setVisible(true); } }