幅と高さを設定する

広告

Dimensionクラスではコンストラクタを使って幅及び高さの2つの値を指定できますが、オブジェクトを作成した後で幅及び高さを指定することが可能です。幅及び高さを指定するにはDimensionクラスで用意されている「setSize」メソッドを使います。

public void setSize(int width, int height)

この Dimension オブジェクトのサイズを、指定された幅と高さに設定します。このメソッドは、
Component によって定義される setSize メソッドとの対応を完全にするために含まれています。

パラメータ:
  width - この Dimension オブジェクトの新しい幅
  height - この Dimension オブジェクトの新しい高さ

Dimensionクラスで保持する2つの値(幅及び高さ)を引数として指定します。指定する値はどちらもint型の値として指定します。

実際には次のように使用します。

Dimension d = new Dimension();
d.setSize(100, 50);

サンプルプログラム

では実際に試してみましょう。今回はJLabelクラスのオブジェクトに対してDimensionクラスのオブジェクトを使ってサイズを指定してみます。

JDimensionTest1.java

import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;

public class JDimensionTest1 extends JFrame{

  public static void main(String[] args){
    JDimensionTest1 frame = new JDimensionTest1();

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setBounds(10, 10, 300, 200);
    frame.setTitle("タイトル");
    frame.setVisible(true);
  }

  JDimensionTest1(){
    JLabel label = new JLabel("Dimensionテスト");
    label.setPreferredSize(new Dimension(150, 50));
    label.setOpaque(true);
    label.setBackground(Color.WHITE);

    JPanel p = new JPanel();
    p.add(label);

    getContentPane().add(p, BorderLayout.CENTER);
  }
}

上記をコンパイルした後で実行すると次のように表示されます。

幅と高さを指定する

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。