2015-10-15 2 views
-1

По некоторым причинам, я не могу показаться, чтобы получить это, чтобы работать:JFrame.setsize() не делает ничего

public class App { 

    public static void main(String[] args){ 

      JFrame frame = new JFrame("Hi"); 
      frame.setSize(300, 400); 
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
      frame.setVisible(true); 

    } 
} 

Независимо от того, какого размера я перехожу к SetSize(), в результате окна, когда я бегу программа по-прежнему крошечная. Какие-либо предложения?

+1

это ваш полный код? Потому что это должно работать нормально (это для меня). Вы уверены, что не вызываете 'frame.pack();' где-то? –

+1

Для меня это работает, в чем проблема? – soorapadman

+1

Чтобы лучше помочь, опубликуйте [MCVE] или [Short, Self Contained, Correct Example] (http://www.sscce.org/). Проблема, похоже, будет в коде, который ** не ** показан выше. Обратите внимание, что GUI должны быть созданы и изменены на EDT. –

ответ

0

Вы пытаетесь использовать этот код, вы получите JFrame. и посмотрите setPrefered метод в программе

import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 

public class JFrameDemo { 

    public static void main(String s[]) { 
     JFrame frame = new JFrame("JFrame Source Demo"); 
     frame.addWindowListener(new WindowAdapter() { 
      public void windowClosing(WindowEvent e) { 
       System.exit(0); 
      } 
     }); 
     JLabel jlbempty = new JLabel(""); 
     jlbempty.setPreferredSize(new Dimension(175, 100)); 
     frame.getContentPane().add(jlbempty, BorderLayout.CENTER); 
     frame.pack(); 
     frame.setVisible(true); 
    } 
} 
+0

'jlbempty.setPreferredSize (новое измерение (175, 100));' Guesses (относительно размера). Добавьте «EmptyBorder» требуемого размера и перестаньте гадать. См. Также [Должен ли я избегать использования методов Set (Preferred | Maximum | Minimum) в Java Swing?] (Http://stackoverflow.com/q/7229226/418556) (Да.) –

Смежные вопросы