📄 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 + -