TITLE:JFrameのサイズを固定

Posted by at 2004-05-17

JFrameのサイズを固定

`JFrameJDialog`のサイズを固定し、変更不可にします。

  • &jnlp;
  • &jar;
  • &zip;
FixedSizeFrame.png

サンプルコード

frame.setResizable(false);
View in GitHub: Java, Kotlin

解説

`JFrame#setResizable`メソッドで、フレームのサイズを変更不可にしています。タイトルバーの最大化ボタンなども選択できなくなります。

コメント

  • アイコン化ボタンを無効化する方法はないようですね。`JInternalFrame`ならクローズも最大化もアイコン化も全部いじれるのに。 -- さく
  • なんだかなさそうですね。`JDialogを使うか、以下みたいにして誤魔化すか…、LookAndFeel`を自作すれば何とかなるのかな? -- aterai
//XPだと「画面のプロパティ」「デザイン」「次のアニメーション効果を…」
//を無効にしないと、ちょっとかっこ悪い。
frame.addWindowListener(new WindowAdapter() {
  @Override public void windowIconified(WindowEvent e) {
    frame.setState(frame.NORMAL);
  }
});
  • Go state-of-the-art with IFrame も面白そうです。IBMだから`SWT使ってるのかなと思ったらJFrame`を継承して作られています。 -- aterai
  • レイアウト変更したときに`setAlwaysOnTopが紛れ込んで、Java Web Start`でサンプルが起動できなくなっていた不具合を修正。 -- aterai