JDialog не отображает контент без ошибок - PullRequest
1 голос
/ 09 августа 2011
package gui;

import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JTextField;

import listener.addHeaderListener;
import listener.removeHeaderListener;

public class headersGUI extends JDialog {
public JFrame GUI;
public JList headers;
public JTextField name;
public JTextField value;
public JButton addheader;
public JButton removeheader;
public headersGUI(JFrame initgui){
    super(GUI, "Headers");
    GUI=initgui;
    setup();
    layout();
    this.pack();
    this.setVisible(true);
}
public void setup(){
    headers=new JList(GUI.headervalues);
    headers.setLayoutOrientation(JList.VERTICAL);
    name=new JTextField(10);
    value=new JTextField(10);
    addheader=new JButton("Add");
    addheader.addActionListener(new addHeaderListener(this, GUI));
    removeheader=new JButton("Remove");
    removeheader.addActionListener(new removeHeaderListener(this, GUI));
}
public void layout(){
    JPanel bottompanel=new JPanel();
    this.getContentPane().add(headers, BorderLayout.CENTER);
    bottompanel.add(new JLabel("Name: "));
    bottompanel.add(name);
    bottompanel.add(new JLabel("Value: "));
    bottompanel.add(value);
    bottompanel.add(addheader);
    bottompanel.add(removeheader);
    this.getContentPane().add(bottompanel, BorderLayout.SOUTH);
}
}

, то есть код JDialog, он просто показывает пробел JDialog Я использую JDK 1,5 на Mac OSX 10.5.8

1 Ответ

2 голосов
/ 10 августа 2011

Ошибка не видна в коде, который вы разместили, и именно поэтому вы не получаете ответы.Так что теперь все, что мы можем сделать, это угадать, и я предполагаю, что, по всей вероятности, данные, переданные в JDialog, являются недостаточными, возможно, вы передаете объект JFrame, отличный от того, который отображается.Вы должны поместить операторы отладки в код выше и код, который использует JDialog, такой как:

public void setup(){
  headers=new JList(GUI.headervalues);  
  system.out.println(/* display some property of the GUI here */ );

И вы должны создать и опубликовать sscce .

Кстати, каковы значения заголовков JFrame #?Это не часть API JFrame.

...