dialogseparator.java
来自「这是JFrame的一些例子(chapter4)。可以参考一下。想要做GUI的人不」· Java 代码 · 共 70 行
JAVA
70 行
/**
DialogSeparator
*/
package dl;
import java.awt.*;
import javax.swing.*;
public class DialogSeparator
extends JLabel
{
public static final int OFFSET = 15;
public DialogSeparator() {}
public DialogSeparator(String text)
{
super(text);
}
public Dimension getPreferredSize()
{
return new Dimension(getParent().getWidth(), 20);
}
public Dimension getMinimumSize()
{
return getPreferredSize();
}
public Dimension getMaximumSize()
{
return getPreferredSize();
}
public void paint(Graphics g)
{
g.setColor(getBackground());
g.fillRect(0, 0, getWidth(), getHeight());
Dimension d = getSize();
int y = (d.height-3)/2;
g.setColor(Color.white);
g.drawLine(1, y, d.width-1, y);
y++;
g.drawLine(0, y, 1, y);
g.setColor(Color.gray);
g.drawLine(d.width-1, y, d.width, y);
y++;
g.drawLine(1, y, d.width-1, y);
String text = getText();
if (text.length()==0)
return;
g.setFont(getFont());
FontMetrics fm = g.getFontMetrics();
y = (d.height + fm.getAscent())/2;
int l = fm.stringWidth(text);
g.setColor(getBackground());
g.fillRect(OFFSET-5, 0, OFFSET+l, d.height);
g.setColor(getForeground());
g.drawString(text, OFFSET, y);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?