按钮的各种操作

来源:互联网 发布:零售 数据 算法 编辑:程序博客网 时间:2024/05/16 05:26

学到的知识点

button.setVerticalTextPosition(AbstractButton.  ? );    可以设置按钮里文本的竖直位置

button.HorizontalTextPosition(AbstractButton. ?);     可以设置按钮里文本的水平位置,如果文本在左边,那么图像就在右边。

button.setMnemonic(KeyEvent.VK_P);          可以设置按钮的另一个点击途径,同时按   Alt+p。

button.setEnabke(true/false);           可以设置按钮是否可以被点击

button.setActionCommend("str"); 可以设置点击下此按钮发出的命令 ,     监听时   ActionEvent e中有方法 e.getActionCommand();返回str。

jframe.setDefaultLookAndFeelDecorated(true); 可以美化JFrame界面。




import java.awt.*;import java.awt.event.*;import javax.swing.AbstractButton;import javax.swing.JButton;import javax.swing.JPanel;import javax.swing.JFrame;import javax.swing.ImageIcon;public class Main extends JPanel implements ActionListener {    protected JButton b1, b2, b3;/** *<br>方法说明:构造器,初始图形界面构建 *<br>输入参数: *<br>返回类型: */    public Main()     {        ImageIcon leftButtonIcon =  new ImageIcon("F:/JavaPractice/javaproject/codefans.net/java实用编程100(1)例1-55/实例11/images/right.gif");        ImageIcon middleButtonIcon = new ImageIcon("F:/JavaPractice/javaproject/codefans.net/java实用编程100(1)例1-55/实例11/images/middle.gif");        ImageIcon rightButtonIcon = new ImageIcon("F:\\JavaPractice\\javaproject\\codefans.net\\java实用编程100(1)例1-55\\实例11\\images\\left.gif");        b1 = new JButton("失效中间按钮(D)", leftButtonIcon);        b1.setVerticalTextPosition(AbstractButton.CENTER);//水平中间对齐        b1.setHorizontalTextPosition(AbstractButton.LEFT);//相当于LEFT        b1.setMnemonic(KeyEvent.VK_D);                    //将b1邦定alt+D键        b1.setActionCommand("disable");                b2 = new JButton("M中间按钮", middleButtonIcon);        b2.setVerticalTextPosition(AbstractButton.BOTTOM);        b2.setHorizontalTextPosition(AbstractButton.CENTER);        b2.setMnemonic(KeyEvent.VK_M);//将b2邦定alt+M键        b3 = new JButton("E激活中间按钮", rightButtonIcon);        b3.setMnemonic(KeyEvent.VK_E);//将b3邦定alt+E键        b3.setVerticalTextPosition(AbstractButton.CENTER);        b3.setHorizontalTextPosition(AbstractButton.RIGHT);        b3.setActionCommand("enable");        b3.setEnabled(false);        //给1和3添加事件监听        b1.addActionListener(this);        b3.addActionListener(this);        //设置按钮提示文本        b1.setToolTipText("点击这个按钮,将使中间的按钮失效!");        b2.setToolTipText("点击这个按钮,没有任何的事件发生!");        b3.setToolTipText("点击这个按钮,将使中间的按钮有效");                //将按钮添加到JPanel中        add(b1);        add(b2);        add(b3);    }/** *<br>方法说明:事件处理 *<br>输入参数: *<br>返回类型: */    public void actionPerformed(ActionEvent e) {        if ("disable".equals(e.getActionCommand())) {            b2.setEnabled(false);            b1.setEnabled(true);            b3.setEnabled(true);        } else {            b2.setEnabled(true);            b1.setEnabled(true);            b3.setEnabled(true);        }    }/** *<br>方法说明:创建图标, *<br>输入参数:String path 图标所在的路径 *<br>返回类型:ImageIcon 图标对象 */    protected static ImageIcon createImageIcon(String path)     {        java.net.URL imgURL = Main.class.getResource(path);        if (imgURL != null) {            return new ImageIcon(imgURL);        }         else {            System.err.println("Couldn't find file: " + path);            return null;        }    }/** *<br>方法说明:主方法 *<br>输入参数: *<br>返回类型: */    public static void main(String[] args) {        //设置使用新的swing界面        JFrame.setDefaultLookAndFeelDecorated(true);        //创建一个窗体        JFrame frame = new JFrame("Main");        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        //创建一个面板        Main newContentPane = new Main();        newContentPane.setOpaque(true);         frame.setContentPane(newContentPane);        //显示窗体        frame.pack();        frame.setVisible(true);    }}











0 0