JavaのDimensionとは
この記事では、JavaのDimensionクラスについて解説します!
Dimensionクラスとは、ボタンやチェックボックスなどのコンポーネントのサイズ(幅・高さ)を指定できるクラスです。
Dimensionのクラス定義は、次の通りです。
public class Dimension extends Dimension2D implements Serializable
java.lang.Object java.awt.geom.Dimension2D java.awt.Dimension
また、コンストラクタは次の通りです。
コンストラクタ | 詳細 |
---|---|
Dimension() | 幅が0で、高さが0のDimensionのインスタンスを作成 |
Dimension(Dimension d) | 指定された寸法と幅と高さが同じDimensionのインスタンスを作成 |
Dimension(int width, int height) | Dimensionを構築し、それを指定された幅と指定された高さに初期化 |
よく使われるのが、3番目の「Dimension(int width, int height)」になります。
幅と高さが指定できるので、コンポーネントを自由に作成できます。
なお、コンストラクタについて詳しく知りたい場合は、以下の記事を参考にしてみてください!
【関連記事】
▶︎Javaコンストラクタとは?基礎からしっかり理解しよう!
では、次の章でさっそくDimensionの使い方を見ていきましょう。
Dimensionの使い方
ここでは、Dimensionの使い方を紹介します。
サンプルとして、次のコードを実行してみます。
JButtonクラスのオブジェクトに対して、Dimensionクラスのオブジェクトを使ってサイズを指定しました。
■記述例 import javax.swing.*; import java.awt.BorderLayout; import java.awt.Dimension; public class DimensionWindow extends JFrame { public static void main(String[] args){ DimensionWindow window = new DimensionWindow(); window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); window.setBounds(10, 10, 500, 300); window.setTitle("Dimensionの確認です!"); window.setVisible(true); } DimensionWindow(){ JButton button1 = new JButton("Left"); JButton button2 = new JButton("Right"); button1.setPreferredSize(new Dimension(80, 80)); button2.setPreferredSize(new Dimension(80, 80)); JPanel panel = new JPanel(); panel.add(button1); panel.add(button2); getContentPane().add(panel, BorderLayout.CENTER); } }
import javax.swing.*; import java.awt.BorderLayout; import java.awt.Dimension;
上記の import でそれぞれのクラスを使えるようにします。
「swing.*」で、GUIを使用したアプリケーション全般を使えるようにしています。
Swingを含めたGUIの実装については、以下の記事もぜひ参考にしてください!
【関連記事】
▶︎【Java】初めての方もすぐ理解できる!GUI開発に必要なフレームワークについて解説。
そして、「BorderLayout」でコンポーネントの配置を指定できます。
DimensionWindow window = new DimensionWindow(); window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); window.setBounds(10, 10, 500, 300); window.setTitle("Dimensionの確認です!"); window.setVisible(true);
ここでは詳しい説明は省きますが、上記の部分でコンポーネントを表示するためのウィンドウを設定しています。
DimensionWindow(){ JButton button1 = new JButton("Left"); JButton button2 = new JButton("Right"); button1.setPreferredSize(new Dimension(80, 80)); button2.setPreferredSize(new Dimension(80, 80)); JPanel panel = new JPanel(); panel.add(button1); panel.add(button2); getContentPane().add(panel, BorderLayout.CENTER); }
上記で、ボタンを作成し、サイズをDimensionで指定しています。
ここでは、80×80のサイズで作成してみました。
最後に、JPanelクラスのオブジェクトにボタンを追加して表示できます。
実行結果は次の通りです。
■実行結果
このように、指定した幅・高さでボタンが作成できました!
Dimensionの単位は?
Dimensionクラスはintで width / height を指定できます。
上記の例でも示したように、「setPreferredSizeメソッド」を使うことで、ピクセル単位でサイズを指定可能です。
まとめ
JavaのDimensionクラスについて解説しました。
Dimensionクラスは、ボタンやラベルなどのコンポーネントのサイズを指定できるクラスです。
GUIを使ったアプリケーションを作成する際に重宝します。
ぜひこの記事を参考に、使い方を覚えてください!
コンポーネントとは、画面上に表示するグラフィカルな表現を持つオブジェクトのことを指します。
例えば、ボタンやラベル、チェックボックス、スクロールバーなどが当てはまります!