Два JPanels в JFrame - PullRequest
       30

Два JPanels в JFrame

0 голосов
/ 29 февраля 2012

(Отредактировано) Хорошо. Скорее всего, я задал неправильный вопрос.

Я проверил менеджеров компоновки перед публикацией, и макет границы казался наиболее близким к тому, чего я надеялся достичь.Тем не менее, он ограничен пятью областями.

Ниже приведен рисунок интерфейса, который я пытаюсь разделить на различные классы Изображение интерфейса http://img821.imageshack.us/img821/2355/mockuphp.png

Он состоит из различных JPanels, и я, честно говоря, неЯ не уверен в этом из всех предыдущих заданных вопросов и прочтения учебных пособий по макету, потому что это кажется слишком сложным.

Так что я думаю, правильный вопрос, который я должен был задать, - возможно ли иметь все эти JPanels?вписаться в JFrame, чтобы выглядеть именно так, используя менеджер макетов?если нет, то есть ли другой способ достичь этого?

Моя цель - не использовать длинный класс кода.

(Оригинальный вопрос) Я прекрасно понимаю, что здесь много дублирующих вопросов,Я прочитал многие из них и до сих пор не могу понять, где я нахожусь.

Я новичок в Java, и мне действительно нужна помощь в выяснении этого.

Вот две панели, которые я пробуюдобавить в JFrame.(Сделал их такими простыми, чтобы я мог проверить, чтобы они продолжались, когда он заработал).

Первая JPanel

package main;
/**
*
* @author Dell
*/
public class NewJPanel extends javax.swing.JPanel {

/**
 * Creates new form NewJPanel
 */
public NewJPanel() {
    initComponents();
}

/**
 * This method is called from within the constructor to initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is always
 * regenerated by the Form Editor.
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

    jPanel1 = new javax.swing.JPanel();
    jButton1 = new javax.swing.JButton();
}

Вторая панель точно такая же, за исключением того, что она называется NewJPanel1

Как я могу поместить эти два в один JFrame рядом, пожалуйста?

Ответы [ 2 ]

1 голос
/ 29 февраля 2012

Swing использует менеджеры компоновки для размещения компонентов, содержащихся в контейнере.Вы можете использовать BorderLayout и разместить две панели на LINE_START и LINE_END, или на LINE_START и CENTER, или на CENTER и LINE_END, в зависимости от того, что вы хотите.

Прочитайте учебник Swing , в нем много полезной информации и полная глава , посвященная менеджерам компоновки.

0 голосов
/ 29 февраля 2012

Вы пометили вопрос с помощью NetBeans, поэтому я бы посоветовал вам использовать GUI Editor . Вы можете просто перетащить свои панели на JFrame, и NetBeans будет обрабатывать макет (он использует GridBayLayout из памяти).

...