Java
 Computer >> コンピューター >  >> プログラミング >> Java

JSplitPaneの左右のペインをプログラムでJavaで非表示にするにはどうすればよいですか?


JSplitPane JComponentのサブクラスです 2つのコンポーネントを水平に並べて配置できるクラス または垂直に 単一のペインで。両方のコンポーネントの表示領域は、実行時にユーザーが調整することもできます。 JSplitPaneの重要なメソッドは、 remove()、removeAll()、resetToPreferredSizes()です。 およびsetDividerLocation() 。 JSplitPaneは、 PropertyChangeListenerを生成できます インターフェース。ペインの1つを非表示にすることができます(左または右 )プログラムで左ボタンをクリックします または右ボタン これらのボタンのアクションリスナーを生成できます。

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JSplitPaneHideTest extends JFrame {
   private JButton leftBtn, rightBtn;
   private JSplitPane jsp;
   public JSplitPaneHideTest() {
      setTitle(" JSplitPaneHide Test");
      leftBtn = new JButton("Left Button");
      rightBtn = new JButton("Right Button");
      jsp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftBtn, rightBtn);
      jsp.setResizeWeight(0.5);
      // Implemention code to hide left pane or right pane
      ActionListener actionListener = new ActionListener() {
         private int loc = 0;
         public void actionPerformed(ActionEvent ae) {
            JButton source = (JButton)ae.getSource();
            if(jsp.getLeftComponent().isVisible() && jsp.getRightComponent().isVisible()) {
               loc = jsp.getDividerLocation();
               jsp.setDividerSize(0);
               jsp.getLeftComponent().setVisible(source == leftBtn);
               jsp.getRightComponent().setVisible(source == rightBtn);
            } else {
               jsp.getLeftComponent().setVisible(true);
               jsp.getRightComponent().setVisible(true);
               jsp.setDividerLocation(loc);
               jsp.setDividerSize((Integer) UIManager.get("SplitPane.dividerSize"));
            }
         }
      };
      rightBtn.addActionListener(actionListener);
      leftBtn.addActionListener(actionListener);
      add(jsp, BorderLayout.CENTER);
      setSize(400, 300);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String[] args) {
      new JSplitPaneHideTest();
   }
}

出力

JSplitPaneの左右のペインをプログラムでJavaで非表示にするにはどうすればよいですか?


JSplitPaneの左右のペインをプログラムでJavaで非表示にするにはどうすればよいですか?


JSplitPaneの左右のペインをプログラムでJavaで非表示にするにはどうすればよいですか?




  1. JavaでJPopupMenuを使用して右クリックメニューを実装するにはどうすればよいですか?

    JPopupMenu マウスの右ボタンがクリックされると、画面の任意の場所に表示されます 。 JPopupMenu ポップアップメニューは、呼び出し元と呼ばれる基になるコンポーネントに関連付けられたフローティングメニューです。 。 ほとんどの場合、ポップアップメニューは特定のコンポーネントにリンクされており、状況に応じた選択肢が表示されます。 ポップアップメニューを作成するには、 JPopupMenuを使用できます クラス。、 JMenuItemを追加できます 通常のメニューのようにポップアップメニューに移動します。 ポップアップメニューを表示するには、 show()を呼び出します。

  2. JavaでJToggleButtonを実装するにはどうすればよいですか?

    JToggleButton JToggleButton AbstractButtonの拡張です また、オンに切り替えることができるボタンを表すために使用できます。 およびオフ 。 JToggleButtonの場合 を初めて押すと、押したままになり、2回押すと離すことができます。 JToggleButton ActionEventを生成します 押すたびに。 JToggleButton ItemEventを生成することもできます 、このイベントは、選択の概念をサポートするコンポーネントによって使用されます。 JToggleButtonの場合 を押すと選択されます。