[JAVA100例]011、按钮

曹梦晗

曹梦晗

2016-02-19 16:25

今天图老师小编要向大家分享个[JAVA100例]011、按钮教程,过程简单易学,相信聪明的你一定能轻松get!

  

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;
/**
 * pTitle: 按钮演示/p
 * pDescription: 提供一个按钮的演示。如何实现按钮和是一个按钮失效/p
 * pCopyright: Copyright (c) 2003/p
 * pFilename: /p
 * @version 1.0
 */
public class ButtonDemo extends JPanel
             implements ActionListener {
   protected JButton b1, b2, b3;
/**
 *br方法说明:构造器,初始图形界面构建
 *br输入参数:
 *br返回类型:
 */
   public ButtonDemo() {
     ImageIcon leftButtonIcon = createImageIcon("images/right.gif");
     ImageIcon middleButtonIcon = createImageIcon("images/middle.gif");
    ImageIcon rightButtonIcon = createImageIcon("images/left.gif");
b1 = new JButton("失效中间按钮(D)", leftButtonIcon);
     b1.setVerticalTextPosition(AbstractButton.CENTER);//水平中间对齐
     b1.setHorizontalTextPosition(AbstractButton.LEADING);//相当于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.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(false);
       b3.setEnabled(true);
     } else {
       b2.setEnabled(true);
       b1.setEnabled(true);
       b3.setEnabled(false);
     }
   }
/**
 *br方法说明:创建图标,
 *br输入参数:String path 图标所在的路径
 *br返回类型:ImageIcon 图标对象
 */
   protected static ImageIcon createImageIcon(String path) {
     java.net.URL imgURL = ButtonDemo.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("ButtonDemo");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//创建一个面板
     ButtonDemo newContentPane = new ButtonDemo();
     newContentPane.setOpaque(true);
    frame.setContentPane(newContentPane);
//显示窗体
     frame.pack();
     frame.setVisible(true);
   }
}

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

[JAVA100例]011、按钮

编程语言 网络编程
[JAVA100例]011、按钮

[JAVA100例]060、继承Thread

编程语言 网络编程
[JAVA100例]060、继承Thread

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

[JAVA100例]001、Hello,Java

编程语言 网络编程
[JAVA100例]001、Hello,Java

[JAVA100例]061、实现Runnable

编程语言 网络编程
[JAVA100例]061、实现Runnable

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

[JAVA100例]037、读取随机文件

编程语言 网络编程
[JAVA100例]037、读取随机文件

[JAVA100例]002、Java流程控制

编程语言 网络编程
[JAVA100例]002、Java流程控制

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

关于动态绑定的理解

关于动态绑定的理解

带你体验Windows7中不一样的IE8

带你体验Windows7中不一样的IE8
下拉加载更多内容 ↓