java jlabel.top_Java JLabel.getBaseline方法代码示例

import javax.swing.JLabel; //导入方法依赖的package包/类

/**

* Returns the baseline.

*

* @throws NullPointerException {@inheritDoc}

* @throws IllegalArgumentException {@inheritDoc}

* @see javax.swing.JComponent#getBaseline(int, int)

* @since 1.6

*/

public int getBaseline(Component c, int width, int height) {

if (c == null) {

throw new NullPointerException("Must supply non-null component");

}

if (width < 0) {

throw new IllegalArgumentException("Width must be >= 0");

}

if (height < 0) {

throw new IllegalArgumentException("Height must be >= 0");

}

Border border = getBorder();

String title = getTitle();

if ((title != null) && !title.isEmpty()) {

int edge = (border instanceof TitledBorder) ? 0 : EDGE_SPACING;

JLabel label = getLabel(c);

Dimension size = label.getPreferredSize();

Insets insets = getBorderInsets(border, c, new Insets(0, 0, 0, 0));

int baseline = label.getBaseline(size.width, size.height);

switch (getPosition()) {

case ABOVE_TOP:

return baseline;

case TOP:

insets.top = edge + (insets.top - size.height) / 2;

return (insets.top < edge)

? baseline

: baseline + insets.top;

case BELOW_TOP:

return baseline + insets.top + edge;

case ABOVE_BOTTOM:

return baseline + height - size.height - insets.bottom - edge;

case BOTTOM:

insets.bottom = edge + (insets.bottom - size.height) / 2;

return (insets.bottom < edge)

? baseline + height - size.height

: baseline + height - size.height + insets.bottom;

case BELOW_BOTTOM:

return baseline + height - size.height;

}

}

return -1;

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值