本文整理汇总了Java中javax.swing.JComponent.paintImmediately方法的典型用法代码示例。如果您正苦于以下问题:Java JComponent.paintImmediately方法的具体用法?Java JComponent.paintImmediately怎么用?Java JComponent.paintImmediately使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.swing.JComponent
的用法示例。
在下文中一共展示了JComponent.paintImmediately方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: paintTransparentFrame
import javax.swing.JComponent; //导入方法依赖的package包/类
protected void paintTransparentFrame() {
Dimension size = component.getComponent().getSize();
if (component.getComponent() instanceof JComponent) {
JComponent jc = (JComponent) component.getComponent();
jc.paintImmediately(0, 0, size.width, size.height);
}
if (disposed) {
return;
}
size = component.getSize();
Point location = component.getLocation();
graphics.setColor(BG);
graphics.fillRect(0 + location.x, 0 + location.y, size.width, size.height);
String name = component.getRComponentName();
graphics.setColor(Color.WHITE);
Font font = new Font(graphics.getFont().getName(), Font.ITALIC | Font.BOLD, 12);
FontMetrics metrics = graphics.getFontMetrics(font);
int stringWidth = metrics.stringWidth(name);
int stringHeight = metrics.getHeight() / 2;
if (stringWidth < size.width && stringHeight < size.height) {
graphics.setFont(font);
graphics.drawString(name, (size.width - stringWidth) / 2 + location.x, (size.height + stringHeight) / 2 + location.y);
} else if (stringWidth >= size.width || stringHeight >= size.height) {
graphics.setFont(new Font(graphics.getFont().getName(), Font.ITALIC, 9));
graphics.drawString(name, 0 + location.x, (size.height + stringHeight) / 2 + location.y);
} else {
logger.warning("Not drawing");
}
}