Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JAVA选项卡设计_Java_User Interface - Fatal编程技术网

JAVA选项卡设计

JAVA选项卡设计,java,user-interface,Java,User Interface,我正在尝试用Java制作一个GUI窗口,在顶部有4个选项卡主页,预订,客人,房间。然而,问题是我不确定如何实现特定选项卡中的按钮 更具体地说,我创建了一个名为GuestTab的类,创建了一个按钮和一个文本字段,但我不知道如何将这些信息传递到Guest选项卡 所以,如果我不太清楚,当我点击GuestTab时,我希望有我在GuestTab类中创建的按钮和文本字段 我将把“SEP”类的代码放在GUI主设计的地方,把“GuestTab”类放在为Guest选项卡添加内容的地方 九月六日: import j

我正在尝试用Java制作一个GUI窗口,在顶部有4个选项卡主页预订客人房间。然而,问题是我不确定如何实现特定选项卡中的按钮

更具体地说,我创建了一个名为GuestTab的类,创建了一个按钮和一个文本字段,但我不知道如何将这些信息传递到Guest选项卡

所以,如果我不太清楚,当我点击GuestTab时,我希望有我在GuestTab类中创建的按钮和文本字段

我将把“SEP”类的代码放在GUI主设计的地方,把“GuestTab”类放在为Guest选项卡添加内容的地方

九月六日:

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

public class SEP extends JFrame
{

  private GuestTab GuestTab;
  private JTabbedPane tPane;
  private MyButtonListener buttonListener;
  private MyTabListener tabListener;
  private JMenuBar menuBar;
  private JMenu fileMenu;
  private JMenuItem exitMenuItem;

  public SEP()
  {
    super("Deer Alley Hotel");

    buttonListener = new MyButtonListener();
    tabListener = new MyTabListener();

    exitMenuItem = new JMenuItem("Exit");
    exitMenuItem.addActionListener(buttonListener);

    fileMenu = new JMenu("File");

    setJMenuBar(menuBar);

    tPane = new JTabbedPane();

    tPane.addTab("                Home             ", new JPanel(
         new FlowLayout()));
    tPane.addTab("               Booking           ", new JPanel(
        new FlowLayout()));
    tPane.addTab("              Guest           ", GuestTab);
    tPane.addTab("              Room        ", new JPanel(new FlowLayout()));
    tPane.addChangeListener(tabListener);

    add(tPane);

    setSize(575, 452);
    setVisible(true);
    setResizable(false);

    setDefaultCloseOperation(EXIT_ON_CLOSE);
    setLocationRelativeTo(null);

  }

  private class MyButtonListener implements ActionListener
  {
    public void actionPerformed(ActionEvent e)
    {
      if (e.getSource() == exitMenuItem)
      {
        int choice = JOptionPane.showConfirmDialog(null,
              "Do you really want to exit the program?", "Exit",
              JOptionPane.YES_NO_OPTION);

        if (choice == JOptionPane.YES_OPTION)
        {
          System.exit(0);
        }
      }
    }
  }

  public class MyTabListener implements ChangeListener
  {
    public void stateChanged(ChangeEvent e)
    {

    }
  }
}
GuestTab.java:

import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class GuestTab extends JPanel
{
  private JButton button1;
  private JButton button2;
  private JButton button3;
  private JButton button4;

  private JPanel panel1;
  private JPanel panel2;

  private JTextField text;

  public GuestTab() 
  {
    panel1 = new JPanel();

    button1 = new JButton("Edit Note");
    button2 = new JButton("Check out");
    button3 = new JButton("Edit Form");
    button4 = new JButton("Search");

    text = new JTextField(15);

    add(panel1);
    panel1.setPreferredSize(new Dimension(280, 300));
    panel1.add(button4);
    panel1.add(text);
    setVisible(true);
  }        

 }

您没有正确定义GuestTab

在这方面:

tPane.addTab("Guest", guestTab);
将其更改为:

tPane.addTab("Guest", new GuestTab());
或者您可以初始化JPanel。你从来没有这么做过你只是说 有一个guest选项卡,但您从不使用它做任何事情,因此您还可以:

private GuestTab guestTab;
后来:

guestTab = new GuestTab();

请注意,不要对变量定义和类调用使用相同的大小写。确保您使用的是正确的驼峰大小写。

您确实需要修复您的格式设置,但不确定您的意图是什么……如果您以可读的方式对代码进行格式化,它将真正帮助您和那些试图回答您问题的人。(例如:将自定义JPanel拆分为单独的.class eetcWell,在我的Eclipse中不是这样:)我使用了ctrl+shift+f,但在这里它是)不用担心:)确保跟踪您正在做的事情我是新手,我总是迷路呵呵有一天事情会顺利的干杯ty@Seinfeld如果答案对你有用,你应该接受。我现在就接受了,不知道=)