本文整理匯總了Java中java.awt.Container.getLocation方法的典型用法代碼示例。如果您正苦於以下問題:Java Container.getLocation方法的具體用法?Java Container.getLocation怎麽用?Java Container.getLocation使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類java.awt.Container
的用法示例。
在下文中一共展示了Container.getLocation方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: showComponent
import java.awt.Container; //導入方法依賴的package包/類
/**
* Show the hideable component
*/
public void showComponent() {
if (getHideableComponent().isVisible()) {
return;
}
if (resizeOnVisibilityChange) {
final Container ancestor = getTopLevelAncestor();
if (ancestor == null) {
return;
}
final Rectangle screenBounds = Info.getScreenBounds(ancestor);
final Point ancestorPos = ancestor.getLocation();
final Dimension ancestorSize = ancestor.getSize();
final Dimension prefHSize = getHideableComponent().getPreferredSize();
final Dimension prefBSize = getBaseComponent().getPreferredSize();
double div = 0.0;
int w = 0, h = 0;
switch (getOrientation()) {
case JSplitPane.HORIZONTAL_SPLIT:
w = Math.min(
ancestorSize.width + prefHSize.width,
screenBounds.width - ancestorPos.x
);
h = ancestorSize.height;
div = prefBSize.width/(double)(prefBSize.width + prefHSize.width);
break;
case JSplitPane.VERTICAL_SPLIT:
w = ancestorSize.width;
h = Math.min(
ancestorSize.height + prefHSize.height,
screenBounds.height - ancestorPos.y
);
div = prefBSize.height/(double)(prefBSize.height + prefHSize.height);
break;
}
ancestor.setSize(w, h);
ancestor.validate();
getHideableComponent().setVisible(true);
((BasicSplitPaneUI) getUI()).getDivider().setVisible(true);
final double divPos = div;
SwingUtilities.invokeLater(new Runnable() {
public void run() {
setDividerLocation(divPos);
}
});
}
else {
getHideableComponent().setVisible(true);
((BasicSplitPaneUI) getUI()).getDivider().setVisible(true);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
setDividerLocation(getPreferredDividerLocation());
}
});
final SplitPane split = getTransverseSplit();
if (split != null) {
split.showTransverseComponent(ComponentSplitter.SplitPane.this);
}
}
}