📄 addressdisplay.java
字号:
import java.awt.*;
public class AddressDisplay
extends Canvas {
private static Font FONT_LARGE = new Font("Serif", Font.BOLD, 16);
private static Font FONT_PLAIN = new Font("Serif", Font.PLAIN, 12);
private static FontMetrics METRICS_LARGE, METRICS_PLAIN;
private Address address = null;
public AddressDisplay() {
super();
METRICS_LARGE = getFontMetrics(FONT_LARGE);
METRICS_PLAIN = getFontMetrics(FONT_PLAIN);
}
public void setText(Address _address) {
address = _address;
setSize(computeSize());
}
private Dimension computeSize() {
int max = METRICS_LARGE.stringWidth(address.toString());
for (int i = 2; i < address.getLabels().length; i++) {
String text = address.getLabels()[i] + address.getAddress()[i];
if (max < METRICS_PLAIN.stringWidth(text)) {
max = METRICS_PLAIN.stringWidth(text);
}
}
return new Dimension(max + 20, address.getLabels().length * 20);
}
public void paint(Graphics g) {
if (address != null) {
g.setFont(FONT_LARGE);
g.setColor(Color.blue);
g.drawString(address.toString(), 5, 20);
for (int i = 2; i < address.getLabels().length; i++) {
String text = address.getLabels()[i] + address.getAddress()[i];
g.setFont(FONT_PLAIN);
g.setColor(Color.black);
g.drawString(text, 10, 20 * i);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -