buttondemo.java

来自「一个小公司要求给写的很简单的任务管理系统。」· Java 代码 · 共 565 行 · 第 1/2 页

JAVA
565
字号
	currentControls = radiobuttons;	radioButtonPanel.add(createControls());    }    public void addCheckBoxes() {	tab.addTab(getString("ButtonDemo.checkboxes"), checkboxPanel);	checkboxPanel.setLayout(new BoxLayout(checkboxPanel, BoxLayout.X_AXIS));        checkboxPanel.setBorder(border5);	JPanel p1 = createVerticalPanel(true);	p1.setAlignmentY(TOP_ALIGNMENT);	checkboxPanel.add(p1);	// Text Radio Buttons	JPanel p2 = createHorizontalPanel(false);	p1.add(p2);	p2.setBorder(new CompoundBorder(                      new TitledBorder(			null, getString("ButtonDemo.textcheckboxes"),			TitledBorder.LEFT, TitledBorder.TOP), border5)	);	checkboxes.add(p2.add(new JCheckBox(getString("ButtonDemo.check1"))));	p2.add(Box.createRigidArea(HGAP10));	checkboxes.add(p2.add(new JCheckBox(getString("ButtonDemo.check2"))));	p2.add(Box.createRigidArea(HGAP10));	checkboxes.add(p2.add(new JCheckBox(getString("ButtonDemo.check3"))));	// Image Radio Buttons	p1.add(Box.createRigidArea(VGAP30));	JPanel p3 = createHorizontalPanel(false);	p1.add(p3);	p3.setLayout(new BoxLayout(p3, BoxLayout.X_AXIS));	p3.setBorder(new TitledBorder(null, getString("ButtonDemo.imagecheckboxes"),					 TitledBorder.LEFT, TitledBorder.TOP));	// image checkbox 1	String description = getString("ButtonDemo.customcheck");	String text = getString("ButtonDemo.check1");	check = new JCheckBox(text, createImageIcon("buttons/cb.gif", description));	check.setRolloverIcon(createImageIcon("buttons/cbr.gif", description));	check.setRolloverSelectedIcon(createImageIcon("buttons/cbrs.gif", description));	check.setSelectedIcon(createImageIcon("buttons/cbs.gif", description));	check.setMargin(new Insets(0,0,0,0));	p3.add(check);	checkboxes.add(check);	p3.add(Box.createRigidArea(HGAP20));	// image checkbox 2	text = getString("ButtonDemo.check2");	check = new JCheckBox(text, createImageIcon("buttons/cb.gif", description));	check.setRolloverIcon(createImageIcon("buttons/cbr.gif", description));	check.setRolloverSelectedIcon(createImageIcon("buttons/cbrs.gif", description));	check.setSelectedIcon(createImageIcon("buttons/cbs.gif", description));	check.setMargin(new Insets(0,0,0,0));	p3.add(check);	checkboxes.add(check);	p3.add(Box.createRigidArea(HGAP20));	// image checkbox 3	text = getString("ButtonDemo.check3");	check = new JCheckBox(text, createImageIcon("buttons/cb.gif", description));	check.setRolloverIcon(createImageIcon("buttons/cbr.gif", description));	check.setRolloverSelectedIcon(createImageIcon("buttons/cbrs.gif", description));	check.setSelectedIcon(createImageIcon("buttons/cbs.gif", description));	check.setMargin(new Insets(0,0,0,0));	p3.add(check);	checkboxes.add(check);	// verticaly glue fills out the rest of the box	p1.add(Box.createVerticalGlue());	checkboxPanel.add(Box.createHorizontalGlue());	currentControls = checkboxes;	checkboxPanel.add(createControls());    }    public void addToggleButtons() {	tab.addTab(getString("ButtonDemo.togglebuttons"), toggleButtonPanel);    }    public JPanel createControls() {        JPanel controls = new JPanel() {            public Dimension getMaximumSize() {                return new Dimension(300, super.getMaximumSize().height);            }        };        controls.setLayout(new BoxLayout(controls, BoxLayout.Y_AXIS));        controls.setAlignmentY(TOP_ALIGNMENT);        controls.setAlignmentX(LEFT_ALIGNMENT);        JPanel buttonControls = createHorizontalPanel(true);        buttonControls.setAlignmentY(TOP_ALIGNMENT);        buttonControls.setAlignmentX(LEFT_ALIGNMENT);        JPanel leftColumn = createVerticalPanel(false);        leftColumn.setAlignmentX(LEFT_ALIGNMENT);        leftColumn.setAlignmentY(TOP_ALIGNMENT);        JPanel rightColumn = new LayoutControlPanel(this);        buttonControls.add(leftColumn);        buttonControls.add(Box.createRigidArea(HGAP20));        buttonControls.add(rightColumn);        buttonControls.add(Box.createRigidArea(HGAP20));        controls.add(buttonControls);	createListeners();        // Display Options        JLabel l = new JLabel(getString("ButtonDemo.controlpanel_label"));        leftColumn.add(l);        JCheckBox bordered = new JCheckBox(getString("ButtonDemo.paintborder"));        bordered.setActionCommand("PaintBorder");         bordered.setToolTipText(getString("ButtonDemo.paintborder_tooltip"));        bordered.setMnemonic(getMnemonic("ButtonDemo.paintborder_mnemonic"));	if (currentControls == buttons) {	        bordered.setSelected(true);	}        bordered.addItemListener(buttonDisplayListener);        leftColumn.add(bordered);        JCheckBox focused = new JCheckBox(getString("ButtonDemo.paintfocus"));        focused.setActionCommand("PaintFocus");         focused.setToolTipText(getString("ButtonDemo.paintfocus_tooltip"));        focused.setMnemonic(getMnemonic("ButtonDemo.paintfocus_mnemonic"));        focused.setSelected(true);        focused.addItemListener(buttonDisplayListener);        leftColumn.add(focused);        JCheckBox enabled = new JCheckBox(getString("ButtonDemo.enabled"));        enabled.setActionCommand("Enabled");         enabled.setToolTipText(getString("ButtonDemo.enabled_tooltip"));        enabled.setSelected(true);        enabled.addItemListener(buttonDisplayListener);        enabled.setMnemonic(getMnemonic("ButtonDemo.enabled_mnemonic"));        leftColumn.add(enabled);        JCheckBox filled = new JCheckBox(getString("ButtonDemo.contentfilled"));        filled.setActionCommand("ContentFilled");         filled.setToolTipText(getString("ButtonDemo.contentfilled_tooltip"));        filled.setSelected(true);        filled.addItemListener(buttonDisplayListener);        filled.setMnemonic(getMnemonic("ButtonDemo.contentfilled_mnemonic"));        leftColumn.add(filled);        leftColumn.add(Box.createRigidArea(VGAP20));        l = new JLabel(getString("ButtonDemo.padamount_label"));        leftColumn.add(l);        ButtonGroup group = new ButtonGroup();        JRadioButton defaultPad = new JRadioButton(getString("ButtonDemo.default"));        defaultPad.setToolTipText(getString("ButtonDemo.default_tooltip"));        defaultPad.setMnemonic(getMnemonic("ButtonDemo.default_mnemonic"));        defaultPad.addItemListener(buttonPadListener);        group.add(defaultPad);        defaultPad.setSelected(true);        leftColumn.add(defaultPad);        JRadioButton zeroPad = new JRadioButton(getString("ButtonDemo.zero"));        zeroPad.setActionCommand("ZeroPad");         zeroPad.setToolTipText(getString("ButtonDemo.zero_tooltip"));        zeroPad.addItemListener(buttonPadListener);        zeroPad.setMnemonic(getMnemonic("ButtonDemo.zero_mnemonic"));        group.add(zeroPad);        leftColumn.add(zeroPad);        JRadioButton tenPad = new JRadioButton(getString("ButtonDemo.ten"));        tenPad.setActionCommand("TenPad");         tenPad.setMnemonic(getMnemonic("ButtonDemo.ten_mnemonic"));        tenPad.setToolTipText(getString("ButtonDemo.ten_tooltip"));        tenPad.addItemListener(buttonPadListener);        group.add(tenPad);        leftColumn.add(tenPad);        leftColumn.add(Box.createRigidArea(VGAP20));	return controls;    }        public void createListeners() {	buttonDisplayListener = new ItemListener() {		Component c;		AbstractButton b;				public void itemStateChanged(ItemEvent e) {		    JCheckBox cb = (JCheckBox) e.getSource();		    String command = cb.getActionCommand();		    if(command == "Enabled") {			for(int i = 0; i < currentControls.size(); i++) {			    c = (Component) currentControls.elementAt(i);			    c.setEnabled(cb.isSelected());			    c.invalidate();			}		    } else if(command == "PaintBorder") {			c = (Component) currentControls.elementAt(0);			if(c instanceof AbstractButton) {			    for(int i = 0; i < currentControls.size(); i++) {				b = (AbstractButton) currentControls.elementAt(i);				b.setBorderPainted(cb.isSelected());				b.invalidate();			    }			}		    } else if(command == "PaintFocus") {			c = (Component) currentControls.elementAt(0);			if(c instanceof AbstractButton) {			    for(int i = 0; i < currentControls.size(); i++) {				b = (AbstractButton) currentControls.elementAt(i);				b.setFocusPainted(cb.isSelected());				b.invalidate();			    }			}		    } else if(command == "ContentFilled") {			c = (Component) currentControls.elementAt(0);			if(c instanceof AbstractButton) {			    for(int i = 0; i < currentControls.size(); i++) {				b = (AbstractButton) currentControls.elementAt(i);				b.setContentAreaFilled(cb.isSelected());				b.invalidate();			    }			}		    }		    invalidate();		    validate();		    repaint();		}	};	buttonPadListener = new ItemListener() {		Component c;		AbstractButton b;				public void itemStateChanged(ItemEvent e) {		    // *** pad = 0		    int pad = -1;		    JRadioButton rb = (JRadioButton) e.getSource();		    String command = rb.getActionCommand();		    if(command == "ZeroPad" && rb.isSelected()) {			pad = 0;		    } else if(command == "TenPad" && rb.isSelected()) {			pad = 10;		    }		    		    for(int i = 0; i < currentControls.size(); i++) {			b = (AbstractButton) currentControls.elementAt(i);			if(pad == -1) {			    b.setMargin(null);			} else if(pad == 0) {			    b.setMargin(insets0);			} else {			    b.setMargin(insets10);			}		    }		    invalidate();		    validate();		    repaint();		}	};    }	    public void stateChanged(ChangeEvent e) {	SingleSelectionModel model = (SingleSelectionModel) e.getSource();	if(model.getSelectedIndex() == 0) {	    currentControls = buttons;	} else if(model.getSelectedIndex() == 1) {	    currentControls = radiobuttons;	} else if(model.getSelectedIndex() == 2) {	    currentControls = checkboxes;	} else {	    currentControls = togglebuttons;	}    }    public Vector getCurrentControls() {	return currentControls;    }}

⌨️ 快捷键说明

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