möchte einen MultiFileupload zu wege bringen mit Zusatzinfos...
dafür habe ich ein GridbagLayout gewählt. aber ein Problem habe ich ...
nach dem Klick auf den "openButton" öffnet sich der Chooser ,
Dateien auswählen und öffnen... alles OK : einen beliebige Anzahl an Dateien wird ohne weiteres so angezeigt wie ich mir das wünsche.
wenn ich aber erneut den "openButton" drücke und weitere Dateien aus einen Ordner auswählen möchte werden die ersten Dateien und deren Informationen neben das GridBagLayout gesetzt.
ichnutze eien Vector zum Befüllenmit sämlichen Objekten, darauf basierend möchte ich Jedes mal wenn der Öffenknopf vom Chooser gedrückt wird das gesammte Fenstern neu in das GridBagLayout bauen .. mit Hilfe einer For-Schleife.
ich habe schon alles mir gefundene probiert, aber ich bekomm es nicht hin .
die Upload.java hängt dran
Bitte um hilfe mit freundlichen Grüßen
Genbarion
PS:habe einen weiter versiondie Läuft sich aber aus 4 verschienenen Layouts zusammen baut ... aber t.. musste ich verwerfen weil ich die daten nicht merh rausbekommen habe... Keiner der JLanel usw. aht einen namen.. nu sammel ich halt alls aus Vectoren raus...
dafür habe ich ein GridbagLayout gewählt. aber ein Problem habe ich ...
nach dem Klick auf den "openButton" öffnet sich der Chooser ,
Dateien auswählen und öffnen... alles OK : einen beliebige Anzahl an Dateien wird ohne weiteres so angezeigt wie ich mir das wünsche.
wenn ich aber erneut den "openButton" drücke und weitere Dateien aus einen Ordner auswählen möchte werden die ersten Dateien und deren Informationen neben das GridBagLayout gesetzt.
ichnutze eien Vector zum Befüllenmit sämlichen Objekten, darauf basierend möchte ich Jedes mal wenn der Öffenknopf vom Chooser gedrückt wird das gesammte Fenstern neu in das GridBagLayout bauen .. mit Hilfe einer For-Schleife.
ich habe schon alles mir gefundene probiert, aber ich bekomm es nicht hin .
die Upload.java hängt dran
Java:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import java.util.*;
public class upload extends JFrame
{
//protected static final LayoutManager = null;
/**
*
*/
private static final long serialVersionUID = 1L;
public upload()
{
super("File Chooser Test Frame");
setBackground(Color.LIGHT_GRAY);
setSize(400,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
final GridBagLayout gbl=new GridBagLayout();
final GridBagConstraints gbc = new GridBagConstraints();
final JButton openButton = new JButton("Open");
openButton.setSize(100, 50);
setLayout(gbl);
gbc.gridx=0;
gbc.gridy=0;
gbc.gridwidth=8;
gbc.gridheight=1;
gbc.weightx=50;
gbc.weighty=10;
gbc.insets=new Insets(4,4,4,4);
gbc.anchor= GridBagConstraints.CENTER;
gbc.fill= GridBagConstraints.NONE;
gbl.setConstraints(openButton, gbc);
add(openButton);
final JButton abschicker= new JButton("Abschluss");
abschicker.setSize(100, 50);
// FileChooser für multiupload
openButton.addActionListener(new ActionListener()
{
int x=0;
boolean head_Flag=true;
Vector datensatz=new Vector(64,8);
Vector typVector=new Vector(3,1);
Vector tablehead=new Vector(8,1);
public void actionPerformed(ActionEvent ae)
{
if(typVector.size()==0)
{
typVector.addElement(new JLabel("exe"));
typVector.addElement(new JLabel("jpeg"));
typVector.addElement(new JLabel("gif"));
typVector.addElement(new JLabel("png"));
typVector.addElement(new JLabel("txt"));
typVector.addElement(new JLabel("pdf"));
typVector.addElement(new JLabel("doc"));
typVector.addElement(new JLabel("mp3"));
typVector.addElement(new JLabel("avi"));
}
if(tablehead.size()==0)
{
tablehead.addElement(new JLabel("Dateiname"));
tablehead.addElement(new JLabel("Dateipfad"));
tablehead.addElement(new JLabel("dateiart"));
tablehead.addElement(new JLabel("Bemerkung"));
tablehead.addElement(new JLabel("firma"));
tablehead.addElement(new JLabel("Objekt"));
tablehead.addElement(new JLabel("Ansprechpartner"));
tablehead.addElement(new JLabel("Projekt / Vorgang"));
}
JFileChooser chooser = new JFileChooser();
chooser.setMultiSelectionEnabled(true);
int option = chooser.showOpenDialog(upload.this);
if (option == JFileChooser.APPROVE_OPTION)
{
File [] sf = chooser.getSelectedFiles();
x=x+sf.length;
if (sf.length > 0)
{
if(head_Flag)
{
//erstellen des Tabellenkopfes
for (int i =0;i<tablehead.size();i++)
{
gbc.gridx=i;
gbc.gridy=1;
gbc.gridwidth=1;
gbc.gridheight=1;
gbc.ipadx=20;
gbc.ipady=20;
gbc.weightx=100;
gbc.weighty=20;
gbl.setConstraints((JLabel)tablehead.get(i),gbc);
add((JLabel)tablehead.get(i));
}
head_Flag=false;
}
for(int i=0;i<sf.length;i++)
{
//füllen des Vectors mit den DAten vom filechooser und Textfeldern
datensatz.add(new JLabel(""+sf[i].getName()));
datensatz.add(new JLabel(""+sf[i].getPath()));
datensatz.add(new JComboBox(typVector));
datensatz.add(new JTextArea("Bitte hier Ihre Bemerkung eingeben",5,50));
datensatz.add(new JTextField("5",50));
datensatz.add(new JTextField("6",50));
datensatz.add(new JTextField("7",50));
datensatz.add(new JTextField("8",50));
}
for(int i=0;i<datensatz.size()/8;i++)
{
//auflisten der Datenaus dem Vector
gbc.gridx=0;
gbc.gridy=i+2;
gbc.gridwidth=1;
gbc.gridheight=1;
gbc.ipadx=10;
gbc.ipady=10;
gbc.weightx=1;
gbc.weighty=1;
gbl.setConstraints((JLabel)datensatz.get(i*8+0), gbc);
add((JLabel)datensatz.get(i*8+0));
gbc.gridx=1;//breite
gbc.gridy=i+2;//höhe
gbc.gridwidth=1;
gbc.gridheight=1;
gbc.ipadx=10;
gbc.ipady=10;
gbc.weightx=0.5;
gbc.weighty=1;
gbl.setConstraints((JLabel)datensatz.get(i*8+1),gbc);
add((JLabel)datensatz.get(i*8+1));
gbc.gridx=3;
gbc.gridy=i+2;
gbc.gridwidth=1;
gbc.gridheight=1;
gbc.ipadx=10;
gbc.ipady=10;
gbc.weightx=1;
gbc.weighty=1;
gbl.setConstraints((JTextArea)datensatz.get(i*8+3), gbc);
add((JTextArea)datensatz.get(i*8+3));
gbc.gridx=4;
gbc.gridy=i+2;
gbc.gridwidth=1;
gbc.gridheight=1;
gbc.ipadx=10;
gbc.ipady=10;
gbc.weightx=1;
gbc.weighty=1;
gbl.setConstraints((JTextField)datensatz.get(i*8+4), gbc);
add((JTextField)datensatz.get(i*8+4));
gbc.gridx=5;
gbc.gridy=i+2;
gbc.gridwidth=1;
gbc.gridheight=1;
gbc.weightx=1.0;
gbc.weighty=1.0;
gbc.fill=GridBagConstraints.NONE;
gbl.setConstraints((JTextField)datensatz.get(i*8+5), gbc);
add((JTextField)datensatz.get(i*8+5));
gbc.gridx=6;
gbc.gridy=i+2;
gbc.gridwidth=1;
gbc.gridheight=1;
gbc.weightx=1.0;
gbc.weighty=1.0;
gbc.fill=GridBagConstraints.NONE;
gbl.setConstraints((JTextField)datensatz.get(i*8+6), gbc);
add((JTextField)datensatz.get(i*8+6));
gbc.gridx=7;
gbc.gridy=i+2;
gbc.gridwidth=1;
gbc.gridheight=1;
gbc.weightx=1.0;
gbc.weighty=1.0;
gbc.fill=GridBagConstraints.NONE;
gbl.setConstraints((JTextField)datensatz.get(i*8+7), gbc);
add((JTextField)datensatz.get(i*8+7));
pack();
}
}
}
setSize(1200,170+(x*30));
}
} );
abschicker.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae)
{
// hier kommt der Cast der Uploaddaten hin zu PhP
System.out.println("hier gehts dann zu PhP rüber");
}
}
);
}
public static void main(String args[]) {
upload sfc = new upload();
sfc.setVisible(true);
}
}
Bitte um hilfe mit freundlichen Grüßen
Genbarion
PS:habe einen weiter versiondie Läuft sich aber aus 4 verschienenen Layouts zusammen baut ... aber t.. musste ich verwerfen weil ich die daten nicht merh rausbekommen habe... Keiner der JLanel usw. aht einen namen.. nu sammel ich halt alls aus Vectoren raus...
Zuletzt bearbeitet von einem Moderator: