如何在Java中以程式設計方式更改JSlider的位置為水平/垂直?


JSliderJComponent類的子類,它類似於捲軸,允許使用者從指定的整數範圍中選擇一個數值。它有一個可以滑動在值範圍內的滑塊,可用於選擇特定值。JSlider可以生成ChangeListener介面,JSlider的重要方法有getMaximum()getMinimum()getOrientation()getValue()setValue()JSlider的預設位置水平的,我們也可以透過從選單欄中選擇選單項以程式設計方式將其位置設定為垂直。它可以為這些選單項生成ActionListener介面,並在actionPerformed()方法中使用JSlider類的setOrientation()方法設定方向。

示例

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JSliderVerticalHorizontalTest extends JFrame implements ActionListener {
   private JSlider slider;
   private JMenuBar menuBar;
   private JMenu menu;
   private JMenuItem menuItem1, menuItem2;
   public JSliderVerticalHorizontalTest() {
      setTitle("JSliderVerticalHorizontal Test");
      setLayout(new FlowLayout());
      menuBar = new JMenuBar();
      menu = new JMenu("JSlider Orientation");
      menuItem1 = new JMenuItem("HORIZONTAL");
      menuItem2 = new JMenuItem("VERTICAL");
      menu.add(menuItem1);
      menu.add(menuItem2);
      menuItem1.addActionListener(this);
      menuItem2.addActionListener(this);
      menuBar.add(menu);
      setJMenuBar(menuBar);
      slider = new JSlider(JSlider.HORIZONTAL, 0, 30, 15);
      add(slider);
      setSize(400, 300);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String[] args) {
      new JSliderVerticalHorizontalTest();
   }
   public void actionPerformed(ActionEvent ae) {
      if (ae.getActionCommand().equals("HORIZONTAL"))
         slider.setOrientation(JSlider.HORIZONTAL);
      else if (ae.getActionCommand().equals("VERTICAL"))
         slider.setOrientation(JSlider.VERTICAL);
   }
}

輸出

更新於:2020年2月10日

316 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.