First of all i am only programming 6-7 months in a school envirement so this might be a stupid question.
In class we just recently learned about AWT and SWING. So while i was reading up on it i decided to test some things out and incorporate some in my program for the exams in a copple of months.
So what i did was make a GUI where if you press a button you got to a class called VoegToe and add a parameter (Trein trein).
Now i tried to add a GroupLayout but after recieving a error like this i realy have no clue where to start or what i have done wrong.
The error :
java.lang.IllegalStateException: javax.swing.JButton[,0,0,0x0,invalid,alignmentX=0.0,alignmentY=0.5,border=javax.swing.plaf.BorderUIResource$CompoundBorderUIResource@7a3cdf,flags=296,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=Annuleer,defaultCapable=true] is not attached to a horizontal group
The code
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.GroupLayout.*;
/**
* Voeg loco of wagen toe aan het systeem
*
* @author Pieter-Jan Casteels
* @version 2017-04-27
*/
public class VoegToe
{
private Trein trein;
private JFrame frame;
/**
* Constructor voor objects van class VoegToe
*/
public VoegToe(Trein newTrein)
{
setTrein(newTrein);
//makePopUp();
}
/**
* Setter voor de Trein classe
*
* @param Trein de huidige Trein
*/
private void setTrein(Trein newTrein)
{
trein = newTrein;
//makePopUp();
}
public void makePopUp()
{
// DropDown voor het selecteren van wagen of Loco
String[] comboFill = {"Wagen", "Loco"};
JComboBox locoWagen = new JComboBox(comboFill);
JTextField wagenNummer = new JTextField();
JTextField lengte = new JTextField();
JTextField massa = new JTextField();
JTextField lading = new JTextField();
JTextField remming = new JTextField();
JTextField handRem = new JTextField();
JButton voegToeButton = new JButton("Voeg Toe");
JButton resetButton = new JButton("Reset");
JButton annButton = new JButton("Annuleer");
frame = new JFrame("Voeg Wagen of Loco toe");
Container frameContent = frame.getContentPane();
GroupLayout layout = new GroupLayout(frameContent);
frameContent.setLayout(layout);
layout.setVerticalGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup()
.addComponent(locoWagen)
.addComponent(wagenNummer)
.addComponent(lengte))
.addGroup(layout.createParallelGroup()
.addComponent(massa)
.addComponent(lading))
.addGroup(layout.createParallelGroup()
.addComponent(remming)
.addComponent(handRem))
.addGroup(layout.createParallelGroup()
.addComponent(voegToeButton)
.addComponent(resetButton)
.addComponent(annButton))
);
frame.pack();
frame.setVisible(true);
}
/**
* Voeg een wagen toe zonder schroefrem
*
* @param long de nummer van de wagen
* @param intiger lengte van de wagen in CM
* @param intiger de massa van de wagen in KG
* @param intiger de massa van de lading in KG
* @param intiger de remming van de wagen
*/
public void addWagen(long newWagenNummer, int newLengte, int newMassa, int newLading, int newRemming)
{
Wagen wagen = new Wagen(newWagenNummer, newLengte, newMassa, newLading, newRemming);
trein.voegWagenToe(wagen);
}
/**
* Voeg een wagen toe met schroefrem
*
* @param long de nummer van de wagen
* @param intiger lengte van de wagen in CM
* @param intiger de massa van de wagen in KG
* @param intiger de massa van de lading in KG
* @param intiger de remming van de wagen
* @param intiger remming van schroefrem
*/
public void addWagen(long newWagenNummer, int newLengte, int newMassa, int newLading, int newRemming, int newRemmingSchroefrem)
{
Wagen wagen = new Wagen(newWagenNummer, newLengte, newMassa, newLading, newRemming, newRemmingSchroefrem);
trein.voegWagenToe(wagen);
}
/**
* Voeg een Locomotief toe
*
* @param long de nummer van de loco
* @param intiger lengte van de loco in CM
* @param intiger de massa van de loco in KG
* @param intiger de remming van de loco
*/
public void addLoco(long newLocoNummer, int newLengte, int newMassa, int newRemming, boolean newAlsVoertuig)
{
Loco loco = new Loco(newLocoNummer, newLengte, newMassa, newRemming, newAlsVoertuig);
trein.voegLocoToe(loco);
}
}
I hope there is someone who sees what i have done wrong and be able to explain in newby language :)