📄 test.java
字号:
package com.jixy.baseOnAWT;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Panel;
import java.awt.Rectangle;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
JFrame frame = new JFrame("Transparent Window");
JButton button = new JButton("This is a button");
JLabel label = new JLabel("This is a label");
MyPanel panel = new MyPanel();
panel.setSize(100, 100);
frame.getContentPane().add("Center", panel);
frame.getContentPane().add("North", button);
frame.getContentPane().add("South", label);
frame.pack();
frame.setSize(150, 100);
frame.show();
panel.update(frame.getGraphics());
}
}
class MyPanel extends Panel {
private Image bi;
private Graphics big;
public void update(Graphics g) {
paint(g);
}
public void paint(Graphics g) {
if (bi == null) {
bi = createImage(getSize().width, getSize().height);
big = bi.getGraphics();
}
Rectangle area = g.getClipBounds();
big.setClip(area);
big.clearRect(area.x, area.y, area.width, area.height);
super.paint(big);
g.drawImage(bi, area.x, area.y, area.x + area.width, area.y
+ area.height, area.x, area.y, area.x + area.width, area.y
+ area.height, this);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -