テキストフィールドにツールチップを表示する

広告

ツールチップとはテキストフィールドなどのコンポーネントのマウスを合わせた時、どんな目的で使用しているものかなど注釈を表示する機能です。ここではテキストフィールドにツールチップを表示する方法について解説します。

ツールチップの設定

テキストフィールドにマウスを合わせた時にコンポーネントの説明として表示されるツールチップの設定を行うには JTextField クラスの親クラスである JComponent クラスで定義されている setToolTipText メソッドを使います。

public void setToolTipText(String text)

ツールヒントに表示するテキストを登録します。 このテキストは、カーソルがコンポーネント上にあるときに表示されます。 詳細は、『The Java Tutorial』の「How to Use Tool Tips」を参照してください。

パラメータ:
text - 表示する文字列。テキストがnullの場合、このコンポーネントのツールヒントはオフ

引数にツールチップとして表示される文字列を表す String クラスのオブジェクトを指定します。

実際の使い方は次のようになります。

JTextField text = new JTextField();
text.setToolTipText("Please enter your name");

サンプルプログラム

それでは簡単なサンプルプログラムを作って試してみます。テキストエディタで次のように記述したあと、 JSample14_1.java という名前で保存します。

import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JPanel;
import java.awt.Container;
import java.awt.BorderLayout;

class JSample14_1 extends JFrame{

  public static void main(String args[]){
    JSample14_1 frame = new JSample14_1("MyTitle");
    frame.setVisible(true);
  }

  JSample14_1(String title){
    setTitle(title);
    setBounds(100, 100, 600, 400);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JTextField nameText = new JTextField("Yamada", 40);
    nameText.setToolTipText("Please enter your name");
    JTextField ageText = new JTextField("20", 40);
    ageText.setToolTipText("Please enter your age");

    JPanel p = new JPanel();
    p.add(nameText);
    p.add(ageText);

    Container contentPane = getContentPane();
    contentPane.add(p, BorderLayout.CENTER);
  }
}

次のようにコンパイルを行います。

javac JSample14_1.java

ツールチップの設定(1)

コンパイルが終わりましたら実行します。

java JSample14_1

テキストフィールドを 2 つ追加しました。 それぞれに異なるツールチップを設定してあります。

ツールチップの設定(2)

マウスをそれぞれのテキストフィールドに合わせると、設定されたツールチップが画面に表示されます。

ツールチップの設定(3)

ツールチップの設定(4)

-- --

テキストフィールドにツールチップを表示する方法について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。