| 发表于:2007-03-28 18:47:18 楼主 |
import java.awt.*; import javax.swing.border.*; import javax.swing.*; class ownborder implements javax.swing.border.border{ private int thickness; private color color; public ownborder(int thickness,color color){ this.thickness=thickness; this.color=color; } //这个方法在后面未调用,怎么就能显示啊? public void paintborder(component c,graphics g,int x,int y,int width,int height){ g.setcolor(this.color); g.fill3drect(x,y,width-thickness,thickness,true); g.fill3drect(x,y+thickness,thickness,height-thickness,true); g.fill3drect(x+thickness,y+height-thickness,width-thickness,thickness,true); g.fill3drect(x+width-thickness,y,thickness,height-thickness,true); } public insets getborderinsets(component c){ return new insets(thickness,thickness,thickness,thickness); } public boolean isborderopaque(){ return true; } } public class mainframe extends jframe{ gridlayout gridlayout1=new gridlayout(2,3); private jlabel jlabel1=new jlabel(); private jlabel jlabel2=new jlabel(); private jlabel jlabel3=new jlabel(); private jlabel jlabel4=new jlabel(); private jlabel jlabel5=new jlabel(); private jlabel jlabel6=new jlabel(); public mainframe(string title){ super(title); setlayout(); add(jlabel1); add(jlabel2); add(jlabel3); add(jlabel4); add(jlabel5); add(jlabel6); } private void setlayout(){ setlayout(gridlayout1); } private void jbinit(){ jlabel1.setfont(new java.awt.font( "dialog ",1,14)); jlabel1.sethorizontalalignment(swingconstants.center); jlabel1.settext( "jlabel1 "); jlabel2.setfont(new java.awt.font( "dialog ",1,14)); jlabel2.sethorizontalalignment(swingconstants.center); jlabel2.settext( "jlabel2 "); jlabel3.setfont(new java.awt.font( "dialog ",1,14)); jlabel3.sethorizontalalignment(swingconstants.center); jlabel3.settext( "jlabel3 "); jlabel4.setfont(new java.awt.font( "dialog ",1,14)); jlabel4.sethorizontalalignment(swingconstants.center); jlabel4.settext( "jlabel4 "); jlabel5.setfont(new java.awt.font( "dialog ",1,14)); jlabel5.sethorizontalalignment(swingconstants.center); jlabel5.settext( "jlabel5 "); jlabel6.setfont(new java.awt.font( "dialog ",1,14)); jlabel6.sethorizontalalignment(swingconstants.center); jlabel6.settext( "jlabel6 "); jlabel1.setborder(new ownborder(10,color.blue)); jlabel2.setborder(new ownborder(15,color.red)); jlabel3.setborder(new ownborder(20,color.orange)); jlabel4.setborder(new ownborder(25,color.yellow)); jlabel5.setborder(new ownborder(30,color.green)); jlabel6.setborder(new ownborder(35,color.white)); } public static void main(string args[]){//没有调用paintborder() mainframe f=new mainframe( "hello "); f.jbinit(); f.setsize(800,600); f.setvisible(true); } } |
|
|
|
|