java p=x_Java PBounds.getCenterX方法代码示例

import edu.umd.cs.piccolo.util.PBounds; //导入方法依赖的package包/类

private static PNode createContentNode( String text, Font font, Color foreground, Color disabledForeground, boolean enabled, BufferedImage image, BufferedImage disabledImage, TextPosition textPosition, double imageTextGap ) {

PNode textNode = createTextNode( text, font, foreground, disabledForeground, enabled );

PNode imageNode = createImageNode( image, disabledImage, enabled );

PComposite content = new PComposite();

content.addChild( textNode );

content.addChild( imageNode );

// layout text and image

double textX, imageX = 0;

double textY, imageY = 0;

PBounds tb = textNode.getFullBoundsReference();

PBounds ib = imageNode.getFullBoundsReference();

if ( textPosition == TextPosition.ABOVE ) {

textX = 0;

imageX = tb.getCenterX() - ( ib.getWidth() / 2 );

textY = 0;

imageY = tb.getMaxY() + imageTextGap;

}

else if ( textPosition == TextPosition.BELOW ) {

imageX = 0;

textX = ib.getCenterX() - ( tb.getWidth() / 2 );

imageY = 0;

textY = ib.getMaxY() + imageTextGap;

}

else if ( textPosition == TextPosition.LEFT ) {

textX = 0;

imageX = tb.getMaxX() + imageTextGap;

textY = 0;

imageY = tb.getCenterY() - ( ib.getHeight() / 2 );

}

else if ( textPosition == TextPosition.RIGHT ) {

imageX = 0;

textX = ib.getMaxX() + imageTextGap;

imageY = 0;

textY = ib.getCenterY() - ( tb.getHeight() / 2 );

}

else {

throw new UnsupportedOperationException( "unsupported text position: " + textPosition );

}

textNode.setOffset( textX, textY );

imageNode.setOffset( imageX, imageY );

return content;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值