Container

Status
Nicht offen für weitere Antworten.
A

Alex der Noob

Gast
Ich hätte eine Frage zu Swing bezüglich Container! :### Mein Proglem dabei ist, Container in eine andere Klasse zu übergeben, um mit

cp.removeAll();
oder
cp.add();

den übergebenen Container befüllen oder wieder löschen kann! Doch das funktioniert nicht! Es geht zwar in der Klasse intern aber wenn ich es übergebe, dann zeigt es mir nichts mehr an!

Würde mich über Hilfe sehr freuen:meld:

MFG
 

AlArenal

Top Contributor
Sag uns mal gerade deine IP, dann rufen wir unsere russischen Hackerfreunde an (die Chinesen pennen schon/noch) und die saugen uns dann den relevanen Teil deines Sourcecodes aus deinem Rechner, damit wir wissen wo der virtuelle Hase im digitalen Pfeffer liegt.

Alternativ könntest du uns den Code auch liefern. Ist aber nur so eine Idee :p
 

m@nu

Bekanntes Mitglied
ziemlich sicher hat sich das gui nicht aktualisiert.
ruf mal updateUI() von deinem container.

andernfalls wärs natürlich wie von AlArenal spitz festgestellt praktisch, wenn du code posten würdest ;)
 
G

Guest

Gast
So bitte der Code, und hier übergebe ich von class Maske zu class Test den Container, aber die Funktionen die ihr vorgeschlagen habt funktionieren nicht.

-------------------------------------------------------------------------------------------------------------------------------------------

Code:
import java.awt.*;
import java.awt.event.*;
import java.util.Vector;

import javax.swing.*;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.*;

public class Maske
extends JFrame implements TreeSelectionListener,ActionListener
{
	
	Container cp =getContentPane();
	 public static final String[][] zeile = {
		    {" 4.4.07", "3000 m", "17:35:96","23","schlecht gefühlt"},
		    {" 4.4.07", "3000 m", "17:35:96","23","schlecht gefühlt"}
	 	};
		    public static final String[] spalte = {
		      "Datum", "Bewerb", "Zeit","Rang","Bemerkung"
		   };
  public Maske()
  {
    super("HTL PERG");
    setLayout(new BorderLayout());
    String [] AHD={"Barth  M.","Dammayr P.","Diwold Matthias","Hofer D.","Kapplmüller C.","Schnepf C."};
    addWindowListener(new WindowClosingAdapter(true));
    //Einfaches TreeModel bauen
    DefaultMutableTreeNode root, child, subchild;
    root = new DefaultMutableTreeNode("Root");
    for (int i = 1; i <= 5; ++i) {
      String name =   i+"AHD";
      child = new DefaultMutableTreeNode(name);
      root.add(child);
      for (int j = 1; (i==3)&&(j <= 5); ++j) {
        subchild = new DefaultMutableTreeNode(AHD[j]);
        child.add(subchild);
      	}
      }
    
    //JTree erzeugen
    JTree tree = new JTree(root);
    tree.setRootVisible(true);
    //JTree einfügen
    JPanel TextPanel=new JPanel();
    TextPanel.setLayout(new FlowLayout(FlowLayout.CENTER));
    JLabel Auswahl=new JLabel("Ausgewählter Schüler:",FlowLayout.LEFT);
    JTextField Schueler=new JTextField("",20);
    TextPanel.add(Auswahl);
    TextPanel.add(Schueler);
   
    
    JTable table = new JTable(zeile,spalte);
    
   cp.add(TextPanel,BorderLayout.NORTH);
   JButton Ausgabe=new JButton("Ausgabe"); 
   cp.add(Ausgabe,BorderLayout.SOUTH);
    Ausgabe.addActionListener(this);
    cp.add(new JScrollPane(table),BorderLayout.CENTER);
    cp.add(new JScrollPane(tree), BorderLayout.WEST);
    tree.addTreeSelectionListener(
    	     new TreeSelectionListener()
    	       {
    	         public void valueChanged(TreeSelectionEvent event)
    	        {
    	           TreePath tp = event.getNewLeadSelectionPath();
    	           if (tp != null) {
    	             System.out.println("  Selektiert: " + tp.toString());
    	          } else {
    	             System.out.println("  Kein Element selektiert");
    	           }
    	        }
    	     }
    	);
    pack();
    
  }

  public static void main(String[] args)
  {
    Maske frame = new Maske();
    frame.setLocation(100, 100);
    frame.setSize(600, 600);
    frame.setVisible(true);
  }

public void valueChanged(TreeSelectionEvent arg0) {
	// TODO Auto-generated method stub
	
}
public void actionPerformed(ActionEvent event)
{
	String cmd = event.getActionCommand();
	
	if(cmd.equals("Ausgabe"))
	{
		Test Hallo=new Test(cp);
	}
}
}

class Test
extends JFrame
{
	public Test(Container cp)
	{
		cp.validate();
		cp.removeAll();
		cp.add(new Button("Hallo"),BorderLayout.SOUTH);
		System.out.println("Isch liege hier");
	}
}
 

Marco13

Top Contributor
Wenn du das cp.validate() machst, NACHDEM du die Änderungen am Inhalt gemacht hast, und noch ein cp.repaint() hinterherschiebst, macht er was. Dummerweise nur das, was du programmiert hast, und leider nicht das, was du willst. Dass "Test" ein JFrame ist, und du den Konstruktor als methode mißbrauchst hat aber keinen besonderen Grund, oder?
 
A

Alex der Noob

Gast
Das ich einen Kontruktor als Methode missbrauche, war nur damit ich schnell ein Beispiel habe zum vorzeigen! SRY
 
A

Alex der Noob

Gast
Wow, habe gerade das mit .validate() und .repaint() ausprobiert und ich danke für diesen konstruktiven Tip, dadurch ist meine Performance bei meinen Programm um einiges besser geworden!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Z Random Butten erstellen ohne Container AWT, Swing, JavaFX & SWT 15
P JavaFX Zugriff auf Fenster/Layout-Container in eigenen Klassen AWT, Swing, JavaFX & SWT 5
H Aus Array Container Panel an Tabbedpane zuweisen AWT, Swing, JavaFX & SWT 29
W JavaFX Tabelle zeilenweise mit Werten füllen und an Container anpassen AWT, Swing, JavaFX & SWT 23
B Swing KeyListener auf Container? AWT, Swing, JavaFX & SWT 1
I CSS - backgroundImage - Größe automatisch an den Container anpassen AWT, Swing, JavaFX & SWT 1
A Swing Externe Klassen aufrufen und in einem bereits vorhandenen Container einfügen AWT, Swing, JavaFX & SWT 0
C Componente in Container (inkl. "Untercontainer") suchen und zurückgeben AWT, Swing, JavaFX & SWT 3
B JTextArea Größe an Container anpassen AWT, Swing, JavaFX & SWT 2
Z Swing JPanel soll größer werden als Parent Container (überlappen) AWT, Swing, JavaFX & SWT 5
H Drag-Evente nach Container wechsel AWT, Swing, JavaFX & SWT 2
J Fehlermeldung adding a window to a container AWT, Swing, JavaFX & SWT 9
S JPanel in den Container hinzufügen AWT, Swing, JavaFX & SWT 3
xehpuk Swing Erst Components, dann Container zeichnen AWT, Swing, JavaFX & SWT 2
K Container AWT, Swing, JavaFX & SWT 14
K JFrame-Größe an inneren Container anpassen AWT, Swing, JavaFX & SWT 2
J Swing Container innerhalb eines JPanels erfragen AWT, Swing, JavaFX & SWT 3
W setEnabled in Container Objekten (JScrollPane) AWT, Swing, JavaFX & SWT 5
X Instanzieren und Zuweisen vom BorderLayout an Container nicht notwendig ? AWT, Swing, JavaFX & SWT 4
B JPG in einem Container anzeigen lassen AWT, Swing, JavaFX & SWT 3
S this-Zugriff auf Container höherer Ebene AWT, Swing, JavaFX & SWT 2
P DragAndDrop zw Component und Container AWT, Swing, JavaFX & SWT 4
S SWT Lösen mit Shell, Container oder Group? AWT, Swing, JavaFX & SWT 5
D Container des JFrame zeichnet sich nicht bei Aufruf von paintAll AWT, Swing, JavaFX & SWT 9
T Exception: Adding a window to a container AWT, Swing, JavaFX & SWT 14
D Container vor Fullscreen AWT, Swing, JavaFX & SWT 5
R Container Size Problem AWT, Swing, JavaFX & SWT 5
hdi Verständnisfrage: Container vs. Component AWT, Swing, JavaFX & SWT 3
I Container AWT, Swing, JavaFX & SWT 6
G MouseEvents an Container weiterleiten AWT, Swing, JavaFX & SWT 8
H Benachrichtigt werden wann ein Container repainted wird? AWT, Swing, JavaFX & SWT 5
G Graphics Objekte in AWT Container einfügen AWT, Swing, JavaFX & SWT 2
A MouseEvent auf Container bzw. Frame weiterleiten AWT, Swing, JavaFX & SWT 5
S Mehrere Container AWT, Swing, JavaFX & SWT 10
T Canvas gegen Container austauschen --> GUI fehlt AWT, Swing, JavaFX & SWT 4
M Container in Frame über Button einfügen? AWT, Swing, JavaFX & SWT 4
G Durchsichtiger verschiebbarer Container gesucht AWT, Swing, JavaFX & SWT 6
G problem mit anzeigen eines geänderten Container AWT, Swing, JavaFX & SWT 2
S Kann JSP mit BI nicht zum Container hinzufügen AWT, Swing, JavaFX & SWT 7
G hintergrund von JFrame/Container transparent machen AWT, Swing, JavaFX & SWT 2
C JPanel oder Container in JPanel AWT, Swing, JavaFX & SWT 2
X Container aus FocusCycle entfernen AWT, Swing, JavaFX & SWT 2
B Container aus einen andere Klasse hinbekommen ? AWT, Swing, JavaFX & SWT 5
R Component aus Container entfernen bzw. austauschen. AWT, Swing, JavaFX & SWT 6
I Hintergrundbild bei awt container AWT, Swing, JavaFX & SWT 9

Ähnliche Java Themen


Oben