如何在Java中以程式設計方式更改JSlider的位置為水平/垂直?
JSlider是JComponent類的子類,它類似於捲軸,允許使用者從指定的整數範圍中選擇一個數值。它有一個可以滑動在值範圍內的滑塊,可用於選擇特定值。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);
}
}輸出
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP