清除方法一、
成都创新互联公司专注于振安企业网站建设,响应式网站建设,成都商城网站开发。振安网站建设公司,为振安等地区提供建站服务。全流程定制网站,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
在图片的位置接着画一个矩形覆盖这个图片,并且把颜色设置成和背景色一样就OK了!
代码如下:
context.fillStyle="ffffff";//白色为例子;
context.fillRect(400,100,400,100);
注意,上面的代码要放在imageObj.onload里面才有效果;
清除的方法二、
用clearRect()方法,代码如下:
context.clearRect(400,100,imageObj.width,100);//清除画布上的指定区域;
注意,上面的代码要放在imageObj.onload里面才有效果;
重画面板,将图片当成背景,在图片之上画控件
参考下我的这串代码
public void serverframe() {
int x, y;
x = 600;
y = 480;
Toolkit theKit = getToolkit();
Dimension winSize = theKit.getScreenSize(); //获取当前显示器分辨率
setBounds((winSize.width - x) / 2, (winSize.height - y) / 2, x, y); //主窗体在屏幕居
this.setTitle("简易局域网聊天工具");
Toolkit kit =Toolkit.getDefaultToolkit();//更改左上角小图标
Image image = kit.createImage(getClass().getResource("images/10.png"));
this.setIconImage(image);
setBak(); //调用背景方法
Container c = getContentPane(); //获取JFrame面板
JPanel jp = new JPanel(); //创建个JPanel
jp.setOpaque(false); //把JPanel设置为透明 这样就不会遮住后面的背景 这样就能在JPanel随意加组件
c.add(jp);
setLayout(null);
label.setBounds(new Rectangle(20, 0, 460, 20));
txarea.setBounds(new Rectangle(20, 20, 460, 280));
label1.setBounds(new Rectangle(20, 320, 460, 20));
txfield.setBounds(new Rectangle(20, 340, 460, 90));
btnend.setBounds(new Rectangle(490, 20, 100, 30));
btnend1.setBounds(new Rectangle(490, 55, 100, 30));
btnend2.setBounds(new Rectangle(490, 90, 100, 30));
btnend3.setBounds(new Rectangle(490, 125, 100, 30));
btnend4.setBounds(new Rectangle(490, 160, 100, 30));
btnend5.setBounds(new Rectangle(490, 195, 100, 30));
btnend6.setBounds(new Rectangle(490, 230, 100, 30));
btnend7.setBounds(new Rectangle(490, 265, 100, 30));
btnend8.setBounds(new Rectangle(490, 380, 100, 50));
add(label);
add(txarea);
add(label1);
add(txfield);
add(btnend);
add(btnend1);
add(btnend2);
add(btnend3);
add(btnend4);
add(btnend5);
add(btnend6);
add(btnend7);
add(btnend8);
this.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
txfield.addActionListener(new textlistener());
this.setResizable(false);
setVisible(true);
connect();
}
public void setBak() { //设置窗口背景
((JPanel) this.getContentPane()).setOpaque(false);
ImageIcon img = new ImageIcon(getClass().getResource("images/1.jpg"));
JLabel background = new JLabel(img);
this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
}
设置标签颜色
Label.setBackground(Color.white); //背景色
Label.setFont(new java.awt.Font("Dialog", 1, 18)); //18代表字号,其他查一下api
Label.setForeground(Color.red); //前景颜色,就是文字颜色了