GUI作成のための標準ライブラリ。同じソースで各種OSで動作する。JavaのSwingとは何かについてまとめています。
この記事の目次です。
1. JavaのSwingとは
2. SwingとAWT
3. Swingの特徴
4. 関連クラス
Swingとは、ウィンドウをもつプログラムに必要な機能をまとめたJava標準のライブラリです。 Javaでリッチなクライアント、GUIアプリケーションを作成するためのJava標準のライブラリです。
JavaではSwingの他に、GUIアプリケーションを作成するためのライブラリとして、AWTと呼ばれるライブラリも提供されています。 SwingはJavaのGUI部品郡の1つで、AWTの上部に作成されたパッケージで、AWTを拡張した機能を持っています。
AWTは実行中のコンピュータに依存するウィンドウとなることが特徴です。 Swingは上記のように実行中のコンピュータに依存しません。
Swingの特徴は、何といっても同じソースコードで各種OSで動かせる点です。
リファレンスには「すべてのプラットフォームで可能なかぎり同じように機能する、「軽量」(Java 共通言語) コンポーネントのセットを提供します。」と書かれています。 すべてがJavaで記述されていて、同じソースコードで表示などすべてのOSで統一することが出来ます。
それ以外の特徴も含め、以下にSwingの特徴をまとめてみます。
Swingを使うと、Javaでボタンやアイコン、メニューなどを取り入れたグラフィカルなプログラムを作成できるようになります。
Swingは、Javaなので、Windows、Mac、Linuxなど各種OSのGUIプログラムが同じコードで記述できます。 すべてJavaで書かれており、完全なクロスプラットフォームです。
既存のAWTコンポーネントの完全Java版であるボタン、リストなどと高レベルで完全Javaコンポーネントであるツリービュー、テーブルビューなどから構成されています。 きめ細かい設定やカスタマイズが可能です。
Swingコンポーネントを使用すると、動作だけでなく、表示もすべてのOSで統一することが出来、Metalと呼ばれるルックアンドフィールが標準となっています。
Java Beansアーキテクチャに対応しており、高度なGUIコンポーネントをそのままソフトウェア部品として再利用できます。
Swing関連のクラスです。
テキスト表示、改行、画像表示の方法など。JLabelクラスについてまとめています。
JMenuクラスはAbstractButtonクラスのサブクラスとなっています。 またJMenuクラスはJMenuItemクラスのサブクラスです。
: +--javax.swing.AbstractButton l : +--javax.swing.JMenuItem | +--javax.swing.JMenu :
JMenuクラスにイベントを登録して、JLabelのラベルの表示内容の変更などユーザのアクションに応じて処理できます。
ここでは、JMenuクラスを使用してJMenuでラベルを変更してみます。
import javax.swing.*; import java.awt.BorderLayout; import java.awt.event.*; public class JMenuSample extends JFrame implements ActionListener { JPanel p = new JPanel(); JMenuBar menu = new JMenuBar(); JMenu fileMenu = new JMenu("ファイル"); JMenuItem itemhello = new JMenuItem("ラベル変更"); JLabel label = new JLabel("ラベル"); public static void main(String[] args){ JMenuSample frame = new JMenuSample(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBounds(10, 10, 300, 100); frame.setTitle("JMenuSample!!"); frame.setVisible(true); } JMenuSample(){ setJMenuBar(menu); menu.add(fileMenu); fileMenu.add(itemhello); itemhello.addActionListener(this); p.add(label); getContentPane().add(p, BorderLayout.CENTER); } public void actionPerformed(ActionEvent e){ //JLabelクラスを使ってJMenuSample!!と表示させる label.setText("JMenuSample!!"); } }
javac JMenuSample.javaでコンパイルして、java JMenuSampleで実行すると次のようになります。
JavaのdrawLineメソッドについてまとめています。 JavaのSwingで作成した画面に直線、点線、色変更、曲線、自由に線を引くなど、多数のサンプルコードがあります。
もっと知識を広げるための参考です。
Javaとは?から言語の枠を超えるところまで、Java言語についてまとめています。
更新履歴になります。
スポンサーリンク
サイト内のページ
言語
C・C++
/HTML
/Java
/JavaScript
/PHP
/シェルスクリプト
開発環境
Ant
/Burp
/Eclipse
/Fiddler
/gcc
/gdb
/Git
/g++
/JDK
/JMeter
/JUnit
/Teraterm
/ZAP
技術・仕様
Ajax
/CORBA
/Jakarta EE(旧称J2EE、Java EE)
/JNI
ライブラリ/Framework/CMS
bootstrap
/jQuery
/FuelPHP
/Lucene
/MyBatis
/Seasar2
/Spring
/Struts
/WordPress
Web API
Google Maps
ITインフラOSとミドルウェア
Linux
/Windows
/シェル
ActiveMQ
/Tomcat
/MariaDB
/MySQL
/Nagios
/Redis
/Solr
ITインフラセキュリティ
公開サーバーのセキュリティ
SI
ホームページの作り方
スポンサーリンク
関連サイト内検索ツール
zealseedsおよび関連サイト内のページが検索できます。
IPアドレス確認ツール
あなたのグローバルIPアドレスは以下です。
3.238.227.73
HTMLの表示色確認ツール
パスワード生成ツール
文字数のプルダウンを選択して、取得ボタンを押すと「a~z、A~Z、0~9」の文字を ランダムに組み合わせた文字列が表示されます。
ここに生成されます。
スポンサーリンク
Copyright (C) 2007-2024 zealseeds. All Rights Reserved. Loarding…