iDempiereでは、ポップアップウィンドウの表示位置を指定するために、ユーティリティメソッド、LayoutUtils.openPopupWindow(基準となるComponent, ポップアップするWindow, "表示位置の指定")があります。ここでは、表示位置の指定に使用する事ができる定数について、まとめておきたいと思います。
position属性
before_start
ポップアップの左辺と基準となるコンポーネントの左辺が一直線になり、ポップアップの上辺が基準となるコンポーネントの上辺に接する。
before_end
ポップアップの右辺と基準となるコンポーネントの右辺が一直線になり、ポップアップの底辺が基準となるコンポーネントの上辺に接する。
after_start
ポップアップの左辺と基準となるコンポーネントの左辺が一直線になり、ポップアップの上辺が基準となるコンポーネントの底辺に接する。この値はメニューボタンで一般的によく使われる。
after_end
ポップアップの右辺と基準となるコンポーネントの右辺が一直線になり、ポップアップの上端が基準となるコンポーネントの底辺に接する。
start_before
ポップアップの上端と基準となるコンポーネントの上端が一直線になり、ポップアップの右辺が基準となるコンポーネントの左辺に接する。
start_after
ポップアップの底辺と基準となるコンポーネントの底辺が一直線になり、ポップアップの右辺が基準となるコンポーネントの左辺に接する。
end_before
ポップアップの上端と基準となるコンポーネントの上端が一直線になり、ポップアップの左辺が基準となるコンポーネントの右辺に接する。この値はサブメニューでよく使用される。
end_after
ポップアップの底辺と基準となるコンポーネントの底辺が一直線になり、ポップアップの左辺が基準となるコンポーネントの右辺に接する。
overlap
ポップアップの左上角が基準となるコンポーネントの左上角と合わさるように表示される。
after_pointer
クリックした位置を基準にポップアップウィンドウが表示される。