@Override
public void paint(Graphics g, JComponent c) {
// TODO Auto-generated method stub
g.setColor(Color.BLACK)
int y = (int) c.getSize().getHeight()
int x = (int) c.getSize().getWidth()
System.out.println(x+" "+y)
g.drawLine(0, y-1, x-1, y-1)
g.drawLine(x-1, 0, x-1, y-1)
super.paint(g, c)
}
}
username.setBorder(new LineBorder(new Color(111,111,111)))jlabel有一个setBorder方法,其中的形式参数是一个Border接口,主要用来设置边框的Border,有很多实现类,你看API文档就可以查到,我简单的给你查了一个,上面的代码就是,你可以多试验几个,慢慢来!
java swing是提供了设置阴影和透明度的方法的,示例如下:import javax.swing.*
import java.awt.*
import java.awt.event.*
import com.sun.awt.AWTUtilities
导入 AWTUtilities可能会提示:访问限制:由于对必需的库 C:\Program Files\Java\jre6\lib\rt.jar 具有一定限制,因此无法访问类型 AWTUtilities,请到eclipse进行设置:窗口》首选项》java》编译器》错误警告 选择 代码样式》访问外层不可访问成员》 把错误修改成功 警告
public class Ceshi extends JFrame
{
public Ceshi()
{
JLabel label=new JLabel("这是一个标签!")
label.setOpaque(false)
label.setHorizontalAlignment(JLabel.CENTER)
add(label)
setSize(600,400)
setLocationRelativeTo(null)
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE)
//Opacity最大值为1.0f,也就是什么也不透明,取值不能大于1.0f
AWTUtilities.setWindowOpacity(this,0.5f)
setVisible(true)
}
public static void main(String[] args)
{
new Ceshi()
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)