TITLE:JFrameのサイズを固定

Posted by aterai at 2004-05-17

JFrameのサイズを固定

JFrameやJDialogのサイズを固定し、変更不可にします。

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

サンプルコード

frame.setResizable(false);

解説

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

コメント

  • アイコン化ボタンを無効化する方法はないようですね。JInternalFrameならクローズも最大化もアイコン化も全部いじれるのに。 -- さく
  • なんだかなさそうですね。JDialog使うか、以下みたいにして誤魔化すか…、L&F自作すれば何とかなるのかな? -- aterai
    //XPだと「画面のプロパティ」「デザイン」「次のアニメーション効果を…」
    //を無効にしないと、ちょっとかっこ悪い。
    frame.addWindowListener(new WindowAdapter() {
      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