Presentation is loading. Please wait.

Presentation is loading. Please wait.

JAVA入門後期⑨ JAVAのSwingのメニュー処理

Similar presentations


Presentation on theme: "JAVA入門後期⑨ JAVAのSwingのメニュー処理"— Presentation transcript:

1 JAVA入門後期⑨ JAVAのSwingのメニュー処理

2 メニュー処理とは GUIにおけるメニューは、 ・通常フレーム上部にあるメニューバー ・ボタンイメージを並べて配置し、それぞれのボタンにイベン
  ・通常フレーム上部にあるメニューバー   ・ボタンイメージを並べて配置し、それぞれのボタンにイベン    トリスナーを登録するツールバー(移動可能であり、又、コ    ンポーネントの一部として扱う)   ・マウスの右ボタンクリック等によって表示されるポップアッ    プメニュー(ボタンクリックで表示されるようにマウスイベン    トリスナーを登録しておく必要がある) 等がある。 又、各メニュー項目(メニューアイテムやボタン)には、イベント リスナーを登録する必要がある。

3 メニューバー 1.メニューバーは三階層 ●第一階層 メニューの並びを表示する JMenuBarクラス ●第二階層
  メニューの並びを表示する   JMenuBarクラス ●第二階層   メニューバー内に表示されるメニュー   JMenuクラス ●第三階層     個々のメニュー項目     JMenuItemクラス     JCheckBoxMenuItemクラス  等 JMenuは入れ子(JMenuの下位階層に再びJMenuがある状態) にも出来る。 又、JMenuBarにJMenuItemを直接登録することも可能。

4 メニューバーの実装例 import java.awt.*; import javax.swing.*;
public class HelloSwing extends JFrame { // 省略 // コンストラクター HelloSwing(String title) { // JMenuBarのインスタンス化 JMenuBar menubar = new JMenuBar(); // JMenuのインスタンス化 JMenu file = new JMenu("ファイル"); JMenu view = new JMenu("表示");

5 メニューバーの実装例 // JMenuItemのインスタンス化 JMenuItem open = new JMenuItem("開く");
JMenuItem save = new JMenuItem("保存"); JMenuItem exit = new JMenuItem("終了"); JCheckBoxMenuItem tool = new JCheckBoxMenuItem("ツールバー", true); JMenu size = new JMenu("フォントサイズ"); JMenuItem large = new JMenuItem("大きく"); JMenuItem small = new JMenuItem("小さく");

6 メニューバーの実装例 // イベントリスナーを登録
OpenListener ol = new OpenListener(frame, textArea, chooser); open.addActionListener(ol); SaveListener sl = new SaveListener(frame, textArea, chooser); save.addActionListener(sl); ExitListener el = new ExitListener(); exit.addActionListener(el); // 他のイベントリスナー("ツールバー", "大きく", "小さく") // は省略している

7 メニューバーの実装例 // JMenuItemを追加 file.add(open); file.add(save);
file.addSeparator(); // セパレーター file.add(exit); view.add(tool); size.add(large); size.add(small); view.add(size); // JMenuにJMenuを追加することも可能

8 メニューバーの実装例 // JMenuを配置 menubar.add(file); menubar.add(view);
// JMenuBarをフレームに追加 // JMenuBarはsetJMenuBar()メッソドを使ってframeに // 追加する frame.setJMenuBar(menubar); // 省略 }

9 ツールバー 1.ツールバーは二階層 ●第一階層 メニューの並びを表示する JToolBarクラス ●第二階層
  メニューの並びを表示する   JToolBarクラス ●第二階層   ツールバー内に表示されるボタンイメージ   JButtonクラス

10 ツールバーの実装例 import java.awt.*; import javax.swing.*;
public class HelloSwing extends JFrame { // 省略 // コンストラクター HelloSwing(String title) { // JToolBarのインスタンス化 JToolBar toolbar = new JToolBar(); toolbar.setFloatable(false); // JTooBar用JButtonのインスタンス化 JButton openButton = new JButton(new ImageIcon("open.png")); JButton saveButton = new JButton(new ImageIcon("save.png"));

11 ツールバーの実装例 // イベントリスナーを登録
OpenListener ol = new OpenListener(frame, textArea, chooser); SaveListener sl = new SaveListener(frame, textArea, chooser); openButton.addActionListener(ol); saveButton.addActionListener(sl);

12 ツールバーの実装例 // JButtonを配置 toolbar.add(openButton);
toolbar.add(saveButton); // JToolBarをフレームに追加 // JToolBarはadd()メッソドを使ってコンテントペインに // 追加する con.add(toolbar, BorderLayout.NORTH); // 省略 }

13 ポップアップメニュー 1.ポップアップメニュー三階層 ●第一階層 メニューの並びを表示する JPopupMenuクラス ●第二階層
  メニューの並びを表示する   JPopupMenuクラス ●第二階層   ポップアップメニュー内に表示されるメニュー   JMenuクラス ●第三階層     個々のメニュー項目     JMenuItemクラス     JCheckBoxMenuItemクラス  等 JMenuは入れ子(JMenuの下位階層に再びJMenuがある状態) にも出来る。 又、JPopupMenuにJMenuItemを直接登録することも可能。

14 ポップアップメニューの実装例 import java.awt.*; import javax.swing.*;
public class HelloSwing extends JFrame { // 省略 // コンストラクター HelloSwing(String title) { // JPopupMenuのインスタンス化 JPopupMenu popup = new JPopupMenu(); // JMenuは使用せず // JMenuItemのインスタンス化 JMenuItem openPopup = new JMenuItem("開く"); JMenuItem savePopup = new JMenuItem("保存");

15 ポップアップメニューの実装例 // イベントリスナーを登録
OpenListener ol = new OpenListener(frame, textArea, chooser); SaveListener sl = new SaveListener(frame, textArea, chooser); openPopup.addActionListener(ol); savePopup.addActionListener(sl); // マウスの右クリックでポップアップメニューが表示されるよ // うにマウスイベントも登録する MouseEventHandler meh = new MouseEventHandler(frame, popup); con.addMouseListener(meh);

16 ポップアップメニューの実装例 // JMenuItemを追加 popup.add(openPopup);
popup.add(savePopup); // JMenuBar, JToolBarのようにフレームへの登録は必要な // い // 省略 }

17 実行結果 メニューバー ツールバー ポップアップメニュー


Download ppt "JAVA入門後期⑨ JAVAのSwingのメニュー処理"

Similar presentations


Ads by Google