0

その中にあるものを最大化して、の青い背景(少なくともMacでは青)を完全にブロックできるJDesktopPaneようにしたいと思います。このデモを実行すると、を最大化しても、全体を占めるわけではないことがわかります。JDesktopPane全体を占めるように設定するにはどうすればよいですか?JInternalFramesJDesktopPaneJInternalFrameJDesktopPaneJDesktopPaneJInternalFrame

この画像では、以下のコードを実行し、JInternalFrameの最大化ボタンを押しましたが、JDesktopPaneにはまだ「青」が表示されています。

ここに画像の説明を入力してください

import java.awt.BorderLayout;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JTextArea;

/**
 *
 * @author Robert
 */
public class Temp {

    Temp() {
        boolean resizable = true;
boolean closeable = true;
boolean maximizable  = true;
boolean iconifiable = true;
String title = "Frame Title";
JInternalFrame iframe = new JInternalFrame(title, resizable, closeable, maximizable, iconifiable);

// Set an initial size
int width = 200;
int height = 50;
iframe.setSize(width, height);

// By default, internal frames are not visible; make it visible
iframe.setVisible(true);

// Add components to internal frame...
iframe.getContentPane().add(new JTextArea());

// Add internal frame to desktop
JDesktopPane desktop = new JDesktopPane();
desktop.add(iframe);

// Display the desktop in a top-level frame
JFrame frame = new JFrame();
frame.getContentPane().add(desktop, BorderLayout.CENTER);
frame.setSize(300, 300);
frame.setVisible(true);
    }
    public static void main (String[] args) {
        new Temp();
    }
}
4

3 に答える 3

2

あなたがグーグルで見つけることができるものは驚くべきものです。私はこれを自分でチェックしていませんが、これは役立つかもしれません

Aqua LookandFeelを使用してJInternalFramesの周囲の影を無効にする

于 2012-07-13T07:49:49.000 に答える
1

によって使用されるmaximizeFrame()メソッドをオーバーライドできます。ここに関連する例があります。DesktopManagerJDesktopPane

于 2012-07-13T04:19:19.527 に答える
0

これをTyr

// Add internal frame to desktop
JDesktopPane desktop = new JDesktopPane();
desktop.add(iframe);
iframe.setMaximum(true);
于 2013-03-24T17:13:54.467 に答える