Swing/ImmovableFrame のバックアップ(No.5)
- バックアップ一覧
 - 差分 を表示
 - 現在との差分 を表示
 - 現在との差分 - Visual を表示
 - ソース を表示
 - Swing/ImmovableFrame へ行く。
  
- 1 (2006-01-29 (日) 17:24:14)
 - 2 (2006-02-27 (月) 16:04:00)
 - 3 (2006-02-27 (月) 17:10:17)
 - 4 (2007-03-02 (金) 16:19:21)
 - 5 (2007-09-21 (金) 12:25:11)
 - 6 (2007-10-05 (金) 02:07:47)
 - 7 (2009-06-09 (火) 20:28:57)
 - 8 (2013-03-22 (金) 11:54:50)
 - 9 (2013-08-24 (土) 22:44:25)
 - 10 (2014-11-25 (火) 03:03:31)
 - 11 (2015-01-21 (水) 18:36:20)
 - 12 (2015-03-11 (水) 18:27:25)
 - 13 (2016-09-07 (水) 14:00:48)
 - 14 (2017-10-19 (木) 15:28:28)
 - 15 (2018-12-05 (水) 18:47:29)
 - 16 (2020-11-10 (火) 12:43:08)
 - 17 (2022-11-11 (金) 14:46:01)
 - 18 (2025-01-03 (金) 08:57:02)
 - 19 (2025-01-03 (金) 09:01:23)
 - 20 (2025-01-03 (金) 09:02:38)
 - 21 (2025-01-03 (金) 09:03:21)
 - 22 (2025-01-03 (金) 09:04:02)
 - 23 (2025-06-19 (木) 12:41:37)
 - 24 (2025-06-19 (木) 12:43:47)
 
 
TITLE:JInternalFrameを固定
JInternalFrameを固定
編集者:Terai Atsuhiro
作成日:2005-10-10
更新日:2022-11-11 (金) 14:46:01
概要
JInternalFrameをマウスなどで移動できないように固定します。
#screenshot
サンプルコード
 BasicInternalFrameUI ui = (BasicInternalFrameUI)immovableFrame.getUI();
 Component north = ui.getNorthPane();
 MouseMotionListener[] actions
   = (MouseMotionListener[])north.getListeners(MouseMotionListener.class);
 for(int i=0;i<actions.length;i++) {
   north.removeMouseMotionListener(actions[i]);
 }
- &jnlp;
 - &jar;
 - &zip;
 
解説
JInternalFrameのMouseMotionListenerをすべて削除することで、マウスによる移動を不可能にしています。
以下のようにしてタイトルバーを削除しても、移動できないフレームを作成することができます。
 ui.setNorthPane(null);
 internalframe.setBorder(BorderFactory.createEmptyBorder());
 internalframe.setSize(200,50);
 internalframe.add(new JLabel("移動できないフレーム", SwingConstants.CENTER));
 internalframe.setLocation(10,10);
 internalframe.pack();
#screenshot(,screenshot2.png)