Моя форма Jframe не появляется, когда я пытаюсь сделать ее отзывчивой

я пытался сделать мою форму JFrame отзывчивой в соответствии с размером экрана, но когда я пытаюсь использовать мой код, он не появляется, и если я удаляю код, он работает нормально. вот мой код

Home frame = new Home();
    Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
    int i = screen.width;
    int j = screen.height;
    frame.setSize(i, j);

пожалуйста помоги


person sahib    schedule 03.02.2016    source источник
comment
Какие значения содержат i и j? (попробуйте System.err.printf("%d / %d\n", i, j) или используйте отладчик)   -  person Andreas Fester    schedule 03.02.2016
comment
Вы говорите, что вы переместите код?   -  person Tsakiroglou Fotis    schedule 03.02.2016
comment
Dimension.width дают FLOAT.Beware!!   -  person Tsakiroglou Fotis    schedule 03.02.2016
comment
@TsakiroglouFotis Он напрямую читает (общедоступные) поля, которые int (docs.oracle.com/javase/8/docs/api/java/awt/). Однако геттеры возвращают Double...   -  person Andreas Fester    schedule 03.02.2016
comment
Возможно, ваши размеры превышают размер экрана при добавлении строки заголовка и прочего, тогда вы можете попасть в этот особый случай: stackoverflow.com/questions/9536804/   -  person Arnaud    schedule 03.02.2016
comment
да, Андреас, ты прав. Спасибо.   -  person Tsakiroglou Fotis    schedule 03.02.2016


Ответы (2)


Чтобы увеличить рамку на весь экран, используйте:

frame.setExtendedState(JFrame.MAXIMIZED_BOTH); 

Чтобы компоненты Swing реагировали и адаптировались к размеру кадра, используйте менеджеры компоновки (например, FlowLayout):

person Eng.Fouad    schedule 03.02.2016
comment
я также должен изменить размер внутреннего элемента, который затем снова нужно будет настроить, для которого мне нужно, чтобы этот код работал, я не хочу альтернативы. я просто хочу, чтобы этот код был исправлен - person sahib; 04.02.2016

я получил ответ. и это было действительно очень просто, мне просто нужно было поставить

this.setResizable(flase);

в моем конструкторе.моя кодировка была правильной

person sahib    schedule 11.02.2016