自定义border (Oval Border)
来源:互联网 发布:cad画图软件 编辑:程序博客网 时间:2024/06/06 15:01
目录:
- Oval border
- 效果图
java代码:
import java.awt.Color;import java.awt.Component;import java.awt.Graphics;import java.awt.GridLayout;import java.awt.Insets;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.border.Border;public class OvalBorder implements Border { protected int ovalWidth = 6; protected int ovalHeight = 6; protected Color lightColor = Color.white; protected Color darkColor = Color.gray; public OvalBorder() { ovalWidth = 6; ovalHeight = 6; } public OvalBorder(int w, int h) { ovalWidth = w; ovalHeight = h; } public OvalBorder(int w, int h, Color topColor, Color bottomColor) { ovalWidth = w; ovalHeight = h; lightColor = topColor; darkColor = bottomColor; } public Insets getBorderInsets(Component c) { return new Insets(ovalHeight, ovalWidth, ovalHeight, ovalWidth); } public boolean isBorderOpaque() { return true; } public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) { width--; height--; g.setColor(lightColor); g.drawLine(x, y + height - ovalHeight, x, y + ovalHeight); g.drawArc(x, y, 2 * ovalWidth, 2 * ovalHeight, 180, -90); g.drawLine(x + ovalWidth, y, x + width - ovalWidth, y); g.drawArc(x + width - 2 * ovalWidth, y, 2 * ovalWidth, 2 * ovalHeight, 90, -90); g.setColor(darkColor); g.drawLine(x + width, y + ovalHeight, x + width, y + height - ovalHeight); g.drawArc(x + width - 2 * ovalWidth, y + height - 2 * ovalHeight, 2 * ovalWidth, 2 * ovalHeight, 0, -90); g .drawLine(x + ovalWidth, y + height, x + width - ovalWidth, y + height); g.drawArc(x, y + height - 2 * ovalHeight, 2 * ovalWidth, 2 * ovalHeight, -90, -90); } public static void main(String[] s) { JFrame f = new JFrame("Oval Border"); f.setSize(100, 100); JPanel p = new JPanel(new GridLayout(0, 1, 5, 5)); JLabel l = new JLabel("Oval Border"); l.setBorder(new OvalBorder()); p.add(l); p.setBorder(new OvalBorder()); f.getContentPane().add(p); f.show(); }}
效果图: ||==========》赞 《======》踩《=========||
- 自定义border (Oval Border)
- border
- Border
- border
- Border
- Border
- border
- border
- border
- border
- border
- border
- border
- border
- border
- 巧用border写三角形(border形状)
- 边框(Border)
- SGU133-Border (Sort)
- UVa 11344 The Huge One (模性质)
- 基于visual Studio2013解决C语言竞赛题之0522和为素
- 设计模式——桥接模式
- innodb引擎几个比较重要的配置参数
- hdu 1853 KM算法
- 自定义border (Oval Border)
- 工作中常用的js函数
- C语言必看!
- 供应商常用标准表
- 一些c语言基础!
- GMM与EM算法(一)
- c语言最重要的一张!
- 基于visual Studio2013解决C语言竞赛题之0523魔方阵
- automake autoconfig