Swing/FixedSizeFrame のバックアップの現在との差分(No.5)
2024-11-19 (火) 15:21:53
Summary
JFrame
やJDialog
のサイズを固定し、変更不可にします。
Screenshot

Advertisement

Source Code Examples
frame.setResizable(false);
Description
- Frame#setResizable(boolean)メソッドを使用して
JFrame
をマウスでリサイズ不可に設定- タイトルバーの最大化ボタンなども選択不可になる
- この設定を切り替えると
LookAndFeel
依存のフレーム装飾が変化してJFrame
自体のサイズも変化する場合がある
Reference
-
frame.addWindowListener(new WindowAdapter() { public void windowIconified(WindowEvent e) { frame.setState(frame.NORMAL); } });
Comment
- アイコン化ボタンを無効化する方法はないようですね。
JInternalFrame
ならクローズも最大化もアイコン化も全部いじれるのに。 -- さく - なんだか無さそうですね。
JDialog
を使うか、以下のように誤魔化すか…、LookAndFeel
を自作すれば何とかなるのかな? -- aterai#spanend #spanadd frame.addWindowListener(new WindowAdapter() { #spanend @Override public void windowIconified(WindowEvent e) { frame.setExtendedState(Frame.NORMAL); } #spanadd }); #spanend #spanadd
-
Go state-of-the-art with IFrame(リンク切れ)も面白そうです。IBMだからSWT
使ってるのかなと思ったらJFrame
を継承して作られています。 -- aterai - レイアウト変更したときに
setAlwaysOnTop
が紛れ込んで、Java Web Start
でサンプルが起動できなくなっていた不具合を修正。 -- aterai