Swing圆角边框的实现方法:

package com.justplay.basic;

import java.awt.Color;
import java.awt.Component;
import java.awt.Graphics;
import java.awt.Insets; import javax.swing.border.Border; /**
* Swing
* 设置圆角边框(可以自定义边框的颜色)
* 可以为button,文本框等人以组件添加边框
* 使用方法:
* JButton close = new JButton(" 关 闭 ");
* close.setOpaque(false);// 设置原来按钮背景透明
* close.setBorder(new RoundBorder());黑色的圆角边框
* close.setBorder(new RoundBorder(Color.RED)); 红色的圆角边框
*
* @author Monsoons
*/
public class RoundBorder implements Border {
private Color color; public RoundBorder(Color color) {// 有参数的构造方法
this.color = color;
} public RoundBorder() {// 无参构造方法
this.color = Color.BLACK;
// 如果实例化时,没有传值
// 默认是黑色边框
} public Insets getBorderInsets(Component c) {
return new Insets(0, 0, 0, 0);
} public boolean isBorderOpaque() {
return false;
} // 实现Border(父类)方法
@Override
public void paintBorder(Component c, Graphics g, int x, int y, int width,
int height) {
g.setColor(color);
g.drawRoundRect(0, 0, c.getWidth() - 1, c.getHeight() - 1, 15, 15);
}
}

最新文章

  1. .htaccess 基础教程(一)
  2. Visio连接数据表实体外键[快捷记录]
  3. 设置TableViewcell标题不悬浮
  4. memcached 最大连接数及其内存大小的设置
  5. android dialog点击其他区域消失
  6. centos6.5 mysql配置整理
  7. redis cluster 集群搭建步骤和注意事项
  8. select,poll,epoll之api笔记
  9. c语言,链表
  10. webdynpro tree控件使用
  11. Android任务栈TaskStack
  12. python&JSONP(Jquery篇)
  13. vue项目中编写一个图片预览的公用组件
  14. 云笔记项目-网页端debug功能学习
  15. Activity间用Intent、Bundle、onActivityResult进行传值
  16. JavaScript调用App原生代码(iOS、Android)通用解决方案
  17. 浅谈:从为什么学习python到如何学好python
  18. CentOS yum 源的配置与使用(引用)
  19. 动态PIVOT行转列
  20. Java中的IO流(二)

热门文章

  1. [置顶] iOS开发规范
  2. 我所经历的SAP选型
  3. JAVA-开发环境搭建之JDK安装配置教程
  4. 和Timesten有个约会--Timesten技术专栏系列(一)
  5. MySQL并发复制系列二:多线程复制
  6. A beginner’s guide to Cache synchronization strategies--转载
  7. 20+ Rsync command’s switches and common usages with examples – Unix/Linux--reference
  8. 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)--转
  9. Shlwapi.h Shlwapi.dll 动态库
  10. MYSQL基础笔记(一)