⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jroundbutton.java

📁 java程序中关于多媒体编程 既有文件说明 更有例子 希望大家可以一起学习交流
💻 JAVA
字号:
package jroundbutton;import java.awt.*;import java.awt.geom.*;import javax.swing.*;/** * <p>Title: Swing按钮</p> * <p>Description: 应用java.awt.geom包中的类制作Swing按钮</p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: 北京师范大学计算机系</p> * @author 张庆利 * @version 1.0 */public class JRoundButton extends JButton {  public JRoundButton() {    super();  }  public JRoundButton(String label) {    super(label);    // 这些声明把按钮扩展为一个圆    Dimension size = getPreferredSize();    size.width = size.height = Math.max(size.width, size.height);    setPreferredSize(size);    //这个调用使JButton不画背景,而允许画一个圆的背景。    setContentAreaFilled(false);  }  // 画圆的背景和标签  protected void paintComponent(Graphics g) {    if (getModel().isArmed()) {    // 可以选一个高亮的颜色作为圆形按钮类的属性    g.setColor(Color.lightGray);    }    else {      g.setColor(getBackground());    }    g.fillOval(0, 0, getSize().width-1, getSize().height-1);    //这个调用会画一个标签和焦点矩形。    super.paintComponent(g);  }  // 用简单的弧画按钮的边界。  protected void paintBorder(Graphics g) {    g.setColor(getForeground());    g.drawOval(0, 0, getSize().width-1,    getSize().height-1);  }  // 侦测点击事件  Shape shape;  public boolean contains(int x, int y) {    // 如果按钮改变大小,产生一个新的形状对象。    if (shape == null ||!shape.getBounds().equals(getBounds())) {      shape = new Ellipse2D.Float(0, 0, getWidth(), getHeight());    }    return shape.contains(x, y);  }}

⌨️ 快捷键说明

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