Я пытаюсь достичь существующей формы, которую я сделал из другой формы. Я хочу нажать кнопку и отобразить другую форму. Вот что я написали:Java GUI: Как открыть существующую форму?
import javax.swing.JFrame;
public class CustomerUI extends JFrame {
public CustomerUI(java.awt.Frame parent, boolean modal)
{
initComponents();
setTitle("Customer Data Input");
setLocationRelativeTo(null);
pack();
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setVisible(true);
}
@SuppressWarnings("unchecked")
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
Customer c = new Customer(jTextField1.getText(), jTextField2.getText(), jTextField3.getText());
CinemaUI form = new CinemaUI();
form.CUST.SetName(jTextField1.getText()); //Customer's Name
form.CUST.SetID(jTextField2.getText()); //Customer's ID
form.CUST.SetCard(jTextField3.getText()); //Customer's card
form.NUM_OF_SEATS = Integer.parseInt(jTextField4.getText()); //Number of seats
form.pack(); //Shows the next Form
form.setVisible(true);
CustomerUI.this.setVisible(false); //Hides this Form
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Create and display the dialog */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
CustomerUI dialog = new CustomerUI(new javax.swing.JFrame(), true);
dialog.addWindowListener(new java.awt.event.WindowAdapter() {
@Override
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(0);
}
});
dialog.setVisible(true);
}
});
}
}
CinemaUI - это название формы, которую я хотел бы открыть.
После нажатия jButton1 (один я хочу, чтобы открыть новое окно), я получаю следующее сообщение об ошибке:
Exception in thread "AWT-EventQueue-0" java.lang.UnsupportedOperationException: Not supported yet.
at my.Cinema.CinemaUI.<init>(CinemaUI.java:30)
at my.Cinema.CustomerUI.jButton1ActionPerformed(CustomerUI.java:126)
at my.Cinema.CustomerUI.access$100(CustomerUI.java:11)
at my.Cinema.CustomerUI$2.actionPerformed(CustomerUI.java:60)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Edit:
Я попытаюсь объяснить, что моя цель состоит в том: Определенных человек хочет заказать билеты в кино. Я сохраняю его данные (имя, кредитную карту и т. Д.) С помощью текстовых полей и приступаю к выбору мест для человека. Первое окно, на котором я смотрю, - это одно с текстовыми полями, и после того, как я нажму кнопку, я хочу, чтобы окно показывало список доступных мест для отображения (CinemaUI
).
Еще раз спасибо за помощь, извините, что так долго.
Вы должны предоставить больше информации о том, что вы делаете, но, не одна формы открыть другую форму и скрыть itseft, вы должны иметь какое-то контроллер, открытие и закрытие форм. – CaveCoder
Я отредактировал сообщение немного, надеюсь, его достаточно. – Villager