swingcomponenttest.java

来自「java图形界面的课堂代码」· Java 代码 · 共 154 行

JAVA
154
字号
package day12;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class SwingComponentTest implements ActionListener,
   ItemListener,AdjustmentListener,ChangeListener{

	private JTextArea jtextarea;
	private JFrame jframe;
	private JPanel jpanelb;
	private JCheckBox jcheckbox1,jcheckbox2,jcheckbox3;
	private ButtonGroup bg;
	private JRadioButton jradiobutton1,jradiobutton2,jradiobutton3;
	private JPasswordField jpasswordfield;
	private JToggleButton jtogglebutton;
	private JScrollPane jscrollpane;
	private JScrollBar jscrollbar;
	private JSlider jslider;
	private JComboBox jcombobox;
	private JProgressBar jprogressbar;
	private JButton jbutton1,jbutton2;

	public static void main(String[] args) {
		new SwingComponentTest().go();
	}
	
	public void init(){
		jcheckbox1=new JCheckBox("复选择项一",true);
		jcheckbox2=new JCheckBox("复选择项二");
		jcheckbox3=new JCheckBox("复选择项三");
		
		bg=new ButtonGroup();
		jradiobutton1=new JRadioButton("单选项一",true);
		jradiobutton2=new JRadioButton("单选项二");
		jradiobutton3=new JRadioButton("单选项三");
		bg.add(jradiobutton1);
		bg.add(jradiobutton2);
		bg.add(jradiobutton3);
		
		jpasswordfield=new JPasswordField(10);
		jtogglebutton=new JToggleButton("B");

		
		jscrollbar=new JScrollBar(0);
		jslider=new JSlider();
		jcombobox=new JComboBox(new String[]{"BMW","BENZ","AUDI","FIAT"});
		jprogressbar=new JProgressBar();
		jprogressbar.setStringPainted(true);
		jbutton1=new JButton("减少");
		jbutton2=new JButton("增加");
		
		//jscrollpane.add(jtextarea);
		jpanelb.add(jcheckbox1);
		jpanelb.add(jcheckbox2);
		jpanelb.add(jcheckbox3);
		
//		jpanelb.add(bg);
		jpanelb.add(jradiobutton1);
		jpanelb.add(jradiobutton2);
		jpanelb.add(jradiobutton3);
		
		jpanelb.add(jpasswordfield);
		jpanelb.add(jtogglebutton);
		//jpanelb.add(jscrollpane);
		jpanelb.add(jscrollbar);
		jpanelb.add(jslider);
		jpanelb.add(jcombobox);
		jpanelb.add(jbutton1);
		jpanelb.add(jprogressbar);
		jpanelb.add(jbutton2);
		
		eventHandle();
	
	}
	
	public void go(){
		//jframe.setSize(400,600);
		jframe.pack();
		jframe.setVisible(true);
	}
	public void eventHandle(){
		jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		jtogglebutton.addActionListener(this);
		jcheckbox1.addActionListener(this);
		jcheckbox2.addActionListener(this);
		jcheckbox3.addActionListener(this);
		jradiobutton1.addActionListener(this);
		jradiobutton2.addActionListener(this);
		jradiobutton3.addActionListener(this);
		jcombobox.addItemListener(this);
		jscrollbar.addAdjustmentListener(this);
		jslider.addChangeListener(this);
		jprogressbar.addChangeListener(this);
		jbutton1.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){	
					jprogressbar.setValue(jprogressbar.getValue()-10);				
			}
		});
		jbutton2.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){	
					jprogressbar.setValue(jprogressbar.getValue()+10);				
			}
		});
		
	}
	
	public SwingComponentTest(){
		jframe=new JFrame("All Swing Components Test");
		jpanelb=new JPanel();
		jtextarea=new JTextArea(15,20);
		jtextarea.setFont(new Font("",Font.BOLD,20));
		jscrollpane=new JScrollPane(jtextarea);
		jframe.setLayout(new BorderLayout());
		jframe.add(jscrollpane,BorderLayout.NORTH);
		jframe.add(jpanelb,BorderLayout.CENTER);
		init();
	}
	
	public void actionPerformed(ActionEvent e){
		JToggleButton jtb=(JToggleButton)e.getSource();
		if(jtb.isSelected())
			jtextarea.append("\n"+jtb.getText()+" was be selected!");	
		else 
			jtextarea.append("\n"+jtb.getText()+" was be eliminated!");		
	}
	public void itemStateChanged(ItemEvent e){
		JComboBox jcb=(JComboBox)e.getSource();
		String selectedItem=(String)jcb.getSelectedItem();
	    jtextarea.append("\n"+selectedItem+" was be selected!");	
	}
	public void adjustmentValueChanged(AdjustmentEvent e){
		JScrollBar jsb=(JScrollBar)e.getSource();
		int value=jsb.getValue();
	    jtextarea.append("\nJScrollBar's currently value is:"+value);	
	}
	public void stateChanged(ChangeEvent e){
		Object obj=e.getSource();
		int value=0;
		if(obj instanceof JSlider){
			JSlider js=(JSlider)obj;
		    value=js.getValue();
		}
		if(obj instanceof JProgressBar){
			JProgressBar jpb=(JProgressBar)obj;
			value=jpb.getValue();
		}		
	    jtextarea.append("\nJSlider/JProgressBar 's currently value is:"+value+"%");	
	}
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?