Установите JFrame в центр экрана в NetBeans
Я разрабатываю настольное приложение java swing с NetBeans и я хочу установить JFrame в центр экрана.
из сети я понимаю, что могу использовать
setLocationRelativeTo(null);
установить рамку в центр
Но я не могу вставить код в IDE NetBeans
так как frame.pack()
и frame.setVisible()
генерируются коды IDE NetBeans 7
и это не позволит никакой вставки кода между двумя методами.
мне нужно получить следующий:
frame.pack()
setLocationRelativeTo(null);
frame.setVisible()
любое предложение о том, как исправить проблему?
9 ответов
Is setVisible()
на сгенерированный код? Странный. В любом случае, вы можете щелкнуть правой кнопкой мыши JFrame
на Navigator
и выберите Properties
. Перейти к Code
и выберите его, чтобы ничего не делать. Затем вручную вставьте код после initComponents()
на JFrame
конструктор.
на конструкторе фрейма, у вас есть это:
public frame() {
initComponents();
}
вам нужно только поставить эту строку: "это.setLocationRelativeTo (null);" под "initComponents();"
и у вас будет это:
public frame() {
initComponents();
this.setLocationRelativeTo(null);
}
запустите его, и он должен отображаться в центре экрана=)
выполните следующие простые шаги:
- выберите рамку и перейдите к свойствам.
- нажмите на раздел кода и установите флажок создать Центр.
Я не уверен, что вы получили ответ на свою проблему, но решение было дано в следующей ссылке Уэйдом Чандлером на форуме NetBeans. К сожалению, инициатор ответа на запрос был нетерпелив, чтобы сказать меньше, и вы должны работать через некоторое беспокойство, чтобы получить ответ.
http://forums.netbeans.org/ptopic37419.html
Wade показывает, как центрировать GUI и какие аспекты кода Вы можете изменить.
Как кроме того, если вы хотите разместить GUI в заданном положении на экране, вы можете использовать:
для этого также требуется доступ к окну свойства - > код. 1. Убедитесь, что вы выбрали кадр (не компонент или снаружи!) 2. Перейдите на вкладку Код в окне Свойства для JFrame. 3. Найдите метку "политика размера формы". 4. В раскрывающемся списке выберите "Создать код изменения размера". 5. Измените положение формы, нажав кнопку "..."рядом с ним. 6. Кроме того, убедитесь, что" Generate Size " проверен также.
Если вы хотите разместить GUI в левом верхнем углу экрана, используйте значение по умолчанию [0,0] для позиции формы. Для размещения второго GUI рядом с первым используйте [450,0]. В этом случае значение x было изменено на 450, значение Y сохранено как 0. Чтобы переместить графический интерфейс вниз по экрану, измените значение Y от 0 до 450.
наконец, есть ошибка NetBeans 226740, которая может привести к проблемам при попытке центрировать некоторые аспекты GUI. Это, вероятно, не повлияет на вас, но полезно осознавать это.
в отношении
Дерек
из ссылки @DerekMannering опубликовано:
Netbeans фактически генерирует центрирующую логику самостоятельно по сравнению с используйте свойство, поэтому вы не увидите параметр setLocationRelativeTo. Пойти на Вкладке " код "в окне "Свойства". Найдите метку "политика размера формы" на вкладке код. В раскрывающемся списке выберите "Создать код изменения размера". Затем убедитесь, что свойство с меткой "создать Центр" проверено. Также вы захотите убедиться, что" Generate Size " проверен как что ж. Должно быть по умолчанию, но вы все равно должны проверить. Теперь, это будет лучше всего работать для расширений JFrame или Frame.
в области конструктора Netbeans выберите JFrame, перейдите к коду.
в коде измените политику размера формы, чтобы "создать код изменения размера"
затем выберите опцию Создать центр.
-
при написании конструктора дать код ниже сделает ваш jframe в центре экрана
public ProjectWork_jframe() { initComponents(); Dimension screenSize,frameSize; int x,y; screenSize=Toolkit.getDefaultToolkit().getScreenSize(); frameSize=getSize(); x=(screenSize.width-frameSize.width)/2; y=(screenSize.height-frameSize.height)/2; setLocation(x, y); }