to vinduer ud fra et program??
Hey, jeg har et mindre problem...Når jeg compiler og kører mit lille program så dukker der to GUI-vinduer op...Det bagerste, hvor i der ikke er nogen faneblade - skulle ikke være der - det skulle side der hvor der står spm3 i det med fanablade (altså der hvor der er blankt)...HVordan får jeg den tilbage på sin plads????
Koden er indsat nedenfor... 2 klasser
import java.sql.*;
import javax.swing.*;
public class Taxa
{
static Connection con;
public static void main(String[] args) throws Exception
{
//load driveren og opret en forbindelsesobjekt til taxa2
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:taxa2");
JFrame frame = new JFrame ("Layout Manager Demo");
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
frame.setTitle("TAXA"); //titel på GUI
JTabbedPane tp = new JTabbedPane();
tp.addTab ("Spm 3", new Spm3(con));
frame.getContentPane().add(tp);
frame.pack();
frame.show();
}
}
KLasse to....
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Spm3 extends JPanel implements ActionListener
{
private JFrame frame;
private JPanel panelmain, panel1, panel2, panel3, panel4;
private JButton søg, slut; //trykknapper til hhv. at søge i databasen og afslutte
private JTextField vognnr, dato; //tekstfelter til hhv. vognnr og dato
private JTextArea resultat; //tekst felt til at udskrive resultat
private int WIDTH = 210, HEIGHT = 170;
private String resultatUd;
private DataBase database;
private Connection con; //databaseforbindelses-objektet
public Spm3(Connection con)
//konstruktør, sætter vinduet op
{
this.con= con; //overfør den modtagne databaseforbindelse
database = new DataBase(con);
frame = new JFrame("TAXA BAGGER");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(80,180); //sæt vinduets størrelse
setLocation(100,100); //og placering (målt i pixels)
setLayout(new FlowLayout()); //vælg layoutmanageren 'FlowLayout'
resultat = new JTextArea(10, 45);
JLabel input1 = new JLabel("Indtast vognummer"); //skriv ledeteksten 'Vognnr'
vognnr= new JTextField(10);
vognnr.addActionListener(this); //definer og tilføj tekstfeltet vognnr
JLabel input2 = new JLabel("Indtast dato");
dato= new JTextField(10);
dato.addActionListener(this);
søg= new JButton("Søg"); //definer og tilføj søg-knappen
søg.addActionListener(this); //registrer søg-knappen, så tryk på
//den kan opfanges
slut= new JButton("Afslut"); //definer og tilføj slut-knappen
slut.addActionListener(this); //registrer slut-knappen, så tryk på den kan opfanges
panelmain = new JPanel();
panelmain.setLayout(new BoxLayout (panelmain, BoxLayout.Y_AXIS));
//Panel til søg vognnr og dato
panel1 = new JPanel();
panel1. setLayout(new FlowLayout(FlowLayout.LEFT));
panel1.setBorder(new javax.swing.border.TitledBorder("Spørgsmål 3"));
//Panel til textArea
panel2 = new JPanel();
panel2. setLayout(new FlowLayout(FlowLayout.LEFT));
panel2.setBorder(new javax.swing.border.TitledBorder("Resultat"));
//Panel til afslut knap
panel3 = new JPanel();
panel3. setLayout(new FlowLayout(FlowLayout.LEFT));
panel1.add(vognnr);
panel1.add(new JLabel("Indtast Vognnr")); //skriv ledeteksten 'Vognnr'
panel1.add(dato);
panel1.add(new JLabel("Indtast Dato"));
panel1.add(søg);
panel2.add(resultat);
panel3.add(slut);
panelmain.add(Box.createRigidArea(new Dimension(0,8)));
panelmain.add(panel1);
panelmain.add(Box.createRigidArea(new Dimension(0,8)));
panelmain.add(panel2);
panelmain.add(Box.createRigidArea(new Dimension(0,8)));
panelmain.add(panel3);
frame.getContentPane().add(panelmain);
frame.pack();
frame.show();
}
public void actionPerformed(ActionEvent e)
//metode, der kaldes automatisk, når brugeren trykker på én af de registrerede
//trykknapper (søg eller slut).
{
if (e.getSource() == vognnr || e.getSource() == dato || e.getSource() == søg)
{
try
{
resultatUd=database.udskrivspm3a(vognnr.getText(), dato.getText());
resultat.setText(resultatUd);
}
catch(Exception ex){System.out.println(ex);}
}
else if (e.getSource()==slut) //ellers hvis det var slut-knappen
{
try
{
con.close(); //nedlæg forbindelsen til myDB
}
catch (Exception ex){System.out.println(ex);}
System.exit(0); //afslut
}
}
}