2016-11-05 21 views
0

の両方が方法がJFrameは、次のコードを使用することで最大化すると言うことを、例herehereのために、これに関連するいくつかの質問がありました最大化のJFrameは、Java

Offset <code>JFrame</code>

として:これは、Windows 10のバグ/ javaの8バグであるかどうか、私はこのコードを使用するときにわからない、その結果は、この(上記の2行のコードのラウンドに関係なく、どの方法されている)でありますあなたは私が見ることができますイメージは、ウィンドウが正しいサイズですが、少し下がオーバーレイされ、左からわずかにオフセットされています。この問題を解決する方法はありますか、コードでJFrameの最大化ボタンを押して実際にプログラムを最大化する方法はありますか?

setLocationRelativeTo(null); 

が枠の位置を設定

import java.awt.GridLayout; 
import javax.swing.JFrame; 

public class CDBurner extends JFrame { 
    private static final long serialVersionUID = -6027473114929970648L; 

    private CDBurner() { 
     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     setLayout(new GridLayout(1, 1)); 
     setExtendedState(getExtendedState() | JFrame.MAXIMIZED_BOTH); 
     setVisible(true); 
     setLocationRelativeTo(null); 
     requestFocus(); 
    } 

    public static void main(String[] args) { 
     new CDBurner(); 
    } 
} 
+1

すぐに役立つようにするには、[MCVE]または[ショート、自己完結型、正しい例](http://www.sscce.org/)を投稿してください。 –

+0

@AndrewThompson 1つを含めて申し訳ありません。 – Dan

+0

@AndrewThompsonこの問題を解決する方法を知っていますか? – Dan

答えて

3

ライン:

編集ここ
は、問題を示しているMCVEです。それは

setExtendedState(getExtendedState() | JFrame.MAXIMIZED_BOTH); 

後に来る場合、それが最大の後に、それはあなたが観察ギャップを引き起こして、フレームの位置を変更します。フレームを最大化するとその位置が決まるので、その行を削除する必要があります(拡張状態を設定する前に置くことはできますが、何もしません)。

+0

ありがとうございます。それはそれを修正する – Dan

+2

いいね!私は疑念を抱いていたが、MCVEで明らかにされるまではコメントするつもりはなかった。 –

関連する問題