JButton und textfield.setText - Komponenten über-/verdecken sich

Seppel

Bekanntes Mitglied
Hallo,
in meinem Programm gibt es eine JCombobox in der Namen von Ehepartnern aufgelistet sind. Durch zwemaliges klicken hintereinander wird die gewählte person geöffnet (mit all ihren daten)
Wenn man eine Person aus der Liste auswählt o wird dies natürlich angezeigt (im Kopf).
Jetzt wollte ih das nach dem auswählen in zwei Textfeldern unter dieser Combobox Ort und datum der Hochzeit angezeigt wird. Das habe ich über textfield[10 bzw 11].setText(Der Inhalt eben); getan. Folge war: in den Textfeldern wurd der Inhalt eingetragen, aber die Fläche die die Liste der Combobox bedeckte (in der Zeit wo man auswählen kann) blieb grau. (also die Liste verschwand aber an dessen stelle war eine graue Fläche. und überdeckte natrülich was anderes. Hier ein wenige Code:

Für die Action
Java:
    //Für ehe combo    
    class CMeinActionLauschercombo implements ItemListener {
        public void itemStateChanged(ItemEvent e) {
            status_auswahl_ehepartner=0;
            int index= p_ehe.getSelectedIndex()+1;
            if (e.getStateChange() != e.DESELECTED ) {
	             textfeld[10].setText(Ehepartner[akt_person][index][1]);
                          textfeld[11].setText(Ehepartner[akt_person][index][2]);	    
            }
        }
    }
    class Actioncombo extends MouseAdapter{
        JComboBox combo;
        public Actioncombo(JComboBox l){combo = l;}    
        public void mouseClicked(MouseEvent e){
        	status_auswahl_ehepartner++;
        	System.out.println(status_auswahl_ehepartner);
        	if (status_auswahl_ehepartner>=2) {
        		status_auswahl_ehepartner=0;
        		int index = combo.getSelectedIndex();
        		if (!(combo.getSelectedItem()).equals("Neu")){
        		akt_person=Integer.parseInt (Ehepartner[akt_person][index][0])-1;
        		eintragen();
        		}		
        	}        	
        }
       }

Wie önnte ich den Fehler in den Griff bekommen? Habe es bereits mit alles Aktualiesieren probiert, da habe ich aber das Problem das auch die Combobox akzualiesiert wird und die Liste doppelt solang ist (jedr Eintrag doppelt)
 

njans

Top Contributor
Also ein Screenshot würde wirklich helfen, damit man versteht, was genau gemeint ist.
Zumal ich sehe, dass du da recht stark von Java Konventionen abweichst (Variablen Namen schreibt man nicht mit unterstrich, außer bei Konstanten, sondern mit CamelCase: status_auswahl_ehepartner -> statusAuswahlEhepartner)
 

Seppel

Bekanntes Mitglied
attachment.php
attachment.php



CamelCase--> sagt mir erst seit kurzen was, und habe deswegen das Programm anders geschrieben, aber im Grunde ist es ja auch egal
 

Anhänge

  • ijl3-1-c4ca.jpg
    ijl3-1-c4ca.jpg
    23,8 KB · Aufrufe: 49
  • ijl3-2-c81e.gif
    ijl3-2-c81e.gif
    4,7 KB · Aufrufe: 45
Zuletzt bearbeitet von einem Moderator:

GUI-Programmer

Top Contributor
Also wenn ich dich richtig verstanden habe, möchtest du, dass nachdem Ort und Datum der Hochzeit eingetragen werden, der graue Hintergrund der JComboBox wieder weiß wird. Vielleicht würde es ja helfen, einen anderen Komponenten mit requestFocus() zu fokusieren. Denn was zuletzt angeklickt wurde hat den Focus, und die JComboBox ist fokusiert nun mal grau (zumindest im Java LookAndFeel).
 

Seppel

Bekanntes Mitglied
Neue Erkenntnisse: Durch setzen des Focus geht es nicht weg. durch ändern der Bearbeitungsfähigkeit der Elemente im Fenster geht es wieder
 

GUI-Programmer

Top Contributor
Ich habe die Lösung deines Problems:
Man muss nicht etwa einen anderen Komponenten fokusieren mit requestFocus(), sondern lediglich der JComboBox den Fokus wegnehmen, und zwar mit JComboBox.setFocusable(false); !!!
Das heißt in deinem Fall musst du, wenn ein Ehepartner ausgewählt wird den Fokus wegnehmen, wenn nicht, dann musst du ihr den Fokus "wieder geben" und sie fokusieren:
Java:
	@Override
	public void itemStateChanged(ItemEvent evt) {
		Object src = evt.getSource();
		if(src.equals(view.comboBox)) {
			System.out.println("itemStateChanged");
			if(evt.getItem().equals("Neu")) {
				view.comboBox.setFocusable(true);
				view.comboBox.requestFocus();
			}
			else view.comboBox.setFocusable(false);
		}
	}
Falls du das mit den Neu und fokusieren natürlich so haben möchtest!!! :toll:
 

Seppel

Bekanntes Mitglied
Java:
class CMeinActionLauschercombo implements ItemListener {
        public void itemStateChanged(ItemEvent e) {
            status_auswahl_ehepartner=0;
            int index= p_ehe.getSelectedIndex()+1;            
            
            test(index);
            
            Object src = e.getSource();
            if(src.equals(p_ehe)) {
                System.out.println("itemStateChanged");
                if(e.getItem().equals("Neu")) {
                    p_ehe.setFocusable(true);
                    p_ehe.requestFocus();
                }
                else p_ehe.setFocusable(false);
            }
        }
    }

so sieht es jetzt aus, und geht nicht. Hab ich falsch umgesetzt?
Also eine Lösung habe ich auch schon, ist aber nicht die schönste. Standartmäßig ind alle Felder nicht editierbar. Über eine Button läst sich das hin und her schalten. Einmal umschalten nach der auswahl reicht schon. Wenn man aber den Ursprünglichen zustand wieder haben will muss man das mit allen machen, und das zwei mal.
 

GUI-Programmer

Top Contributor
Hilft es dir weiter, wenn ich dir den gesamten Code des Programmes gebe? (Sind 4 Klassen: Model, View, Controller, Application)
Denn bei mir funktioniert es so!
 

Seppel

Bekanntes Mitglied
hi, hatte ne weile keine Internet

ja bitte vileicht hilft das, meine Methode funktioniert zwar, ist aber thechnisch nicht grad toll
 

bERt0r

Top Contributor
Dein Problem dürfte gar nicht auftreten. Du machst woanders einen Fehler, ich rate: Du benutzt AWT und Swing Klassen gemeinsam. Hast du vielleicht einen Frame und keinen JFrame?
 

Seppel

Bekanntes Mitglied
Das man die nicht mischen sollte war mir bewusst, beim durch schauen find ig aber auch kein Awt, oder bin ich zunahe dran das ig das Problem ne mehr seh, hier mal mein Konstruktur und die Klassenvariablen eigentlich alles Swing oder!?

Java:
//Bilddaten   
  int m_Xpos,m_Ypos; 
  Image   m_aktBild;
  JFrame m_fenster = new JFrame();
  String m_dateiname;
  int m_bild_x1,m_bild_y1;        // die aktuelle Begrenzung 
  int m_bild_x2,m_bild_y2;        // des Bildes
  int m_bildHoehe,m_bildBreite;
  
  //allgemeine Infos
  int akt_person;						//wer wird angezeigt
  int MAX_PERSONEN=1000;				//maximale anzahl an datensätze
  String Cronikname, OrdnerCronikname;	//verzeichniss struktur der geöffneten Datei
  int status_auswahl_ehepartner=0;		//Um Ehepartner auszuwählen

  //datenbank
  String[][] Datenbank=new String[MAX_PERSONEN][100];
  String[][][] Beruf=new String[MAX_PERSONEN][10][2];
  String[][][] Ehepartner=new String[MAX_PERSONEN][20][3];
  String[][]Eltern=new String[MAX_PERSONEN][3];
  String[][]Geschwister=new String[MAX_PERSONEN][20];
  String[][]Kinder=new String[MAX_PERSONEN][20];
  
  //Textfelder
  JTextField textfeld[] =new JTextField[22];
 
  JComboBox p_beruf =new JComboBox();
  JTextArea p_notiz =new JTextArea("",5,10);
  JTextArea p_notallg =new JTextArea("",5,10);
  JComboBox p_ehe =new JComboBox();

  JList list = new JList();
  JList list2 = new JList();
  JList list3 = new JList();
  JLabel p_num =new JLabel("Datennummer:");
  JLabel p_nummer =new JLabel("Keine Nummer");

  CBildLeinwand m_bildanzeige ;
  JScrollBar bildlaufleiste = new JScrollBar(SwingConstants.HORIZONTAL,1,1,1,11);
  ActionListener listener;
  
  JButton personbearbeitenbutton = new JButton("Bearbeiten");
  JButton personbearbeitenbuttonsave = new JButton("Speichern");
  int bearbeiten_status=0;	//ob man die Person bearbeiten kann oder nicht 0=nicht
  
  JLabel personbearbeitenlabel = new JLabel("Arbeitsplätze");
  JButton p_ehe_ändern = new JButton("Wählen           (Ehe)"); 
  JButton p_beruf_ändern = new JButton		("Ändern           (Job)");  
  JButton p_kinder_ändern = new JButton		("Ändern Kinder");
  JButton p_geschwister_ändern = new JButton("Ändern Geschw.");
  JButton p_eltern_ändern = new JButton		("Ändern Eltern");
  
  JLabel p_gesch =new JLabel("Geschwister:");
  JLabel p_eltern =new JLabel("Eltern:");
  JLabel p_kinder =new JLabel("Kinder:");
  //####################################################################################################################
  public JMenuItem addMenuItem(String itemLabel, JMenu menu){
      JMenuItem item = new JMenuItem(itemLabel);
      item.addActionListener(listener);
      return menu.add(item);
  }
  
  public static void main(String[] args) {
	Chronik2 fenster = new Chronik2 ("FamilienChronik2");	
    fenster.pack();
    fenster.setSize(1000,900);
    fenster.setResizable(false);
    fenster.setVisible(true); 
  }
  
  // Im Konstruktor werden die Canvas-Malfläche und 
  // Schaltflächen zur Auswahl der Funktionen angelegt
   Chronik2 (String titel) {
    super(titel);

    GridBagLayout gbl = new GridBagLayout();
    GridBagConstraints gbc = new GridBagConstraints();

    // Die Ereignisbehandlung für die Schaltflächen
    class CMeinActionLauscher implements ActionListener {
      public void actionPerformed(ActionEvent e)  {
          String label;
		  
          label = e.getActionCommand();            
          if (label.equals("Neue Cronik")) {        
        	  neuecronikerstellenfenster NeueCronik =new neuecronikerstellenfenster ("FamilienChronik2"); 
        	  NeueCronik.pack();
        	  NeueCronik.setSize(200,100);
        	  NeueCronik.setResizable(false);
        	  NeueCronik.setVisible(true);
          }            
          if (label.equals("Cronik laden")) {dateiladen(true);}
          if (label.equals("Cronik speichern")) {speichern();}	
          if (label.equals("Programm beenden")) {System.exit(0);}
          if (label.equals("Stammbaum anzeigen")) {}													//##########
          if (label.equals("Aktuelle Person bearbeiten")) {bearbeiten_status=0; bearbeiten_status();}            	  
          if (label.equals("Ändern Geschw.") && list.getSelectedIndex()!=-1) {  
    		  FamilienMitgliederbearbeitenfensterstarten("Familienmitglied bearbeiten","Geschwister"); 
          } 	      
          if (label.equals("Ändern Eltern") && list2.getSelectedIndex()!=-1) {  
    		  FamilienMitgliederbearbeitenfensterstarten("Familienmitglied bearbeiten","Eltern");        	  
          } 
          if (label.equals("Ändern Kinder") && list3.getSelectedIndex()!=-1) { 
    		  FamilienMitgliederbearbeitenfensterstarten("Familienmitglied bearbeiten","Kinder");  
          }   
          
          if (label.equals("Ändern           (Job)")) {         	  
        	  int index = p_beruf.getSelectedIndex();	         	  
        	  jobbearbeitenfenster NeueCronik_person =new jobbearbeitenfenster ("Job bearbeiten",index);          	  
        	  NeueCronik_person.pack();
        	  NeueCronik_person.setSize(200,180);
        	  NeueCronik_person.setResizable(false);
        	  NeueCronik_person.setVisible(true);
          }
          if (label.equals("Ändern           (Ehe)")) {
        	  int index = p_ehe.getSelectedIndex();	         	  
        	  ehebearbeitenfenster NeueCronik_person =new ehebearbeitenfenster ("Job bearbeiten",index);          	  
        	  NeueCronik_person.pack();
        	  NeueCronik_person.setSize(230,160);
        	  NeueCronik_person.setResizable(false);
        	  NeueCronik_person.setVisible(true);   
          }						
          if (label.equals("Wählen           (Ehe)")) {
        	  int index = p_ehe.getSelectedIndex();
      			if (!(p_ehe.getSelectedItem()).equals("Neu")){
	      			akt_person=Integer.parseInt (Ehepartner[akt_person][index][0])-1;
	      			eintragen();
      			}
          }						
          if (label.equals("Entwickler")) {
        	  entwicklerfenster NeueCronik_entwickler =new entwicklerfenster ("Entwickler"); 
        	  NeueCronik_entwickler.pack();
        	  NeueCronik_entwickler.setSize(400,80);
        	  NeueCronik_entwickler.setResizable(false);
        	  NeueCronik_entwickler.setVisible(true);          	  
          }
          if (label.equals("Wert suchen")) {suchewahl();}             
          if (label.equals("Vater zeigen")) {suche(true,false,"","",false);}    
          if (label.equals("Mutter zeigen")) {suche(false,true,"","",false);}  
          if (label.equals("Bearbeiten") | label.equals("Abbrechen")) {bearbeiten_status();}            
          if (label.equals("Speichern")) { bearbeiten_status(); speichern();      } 
          
          if (label.equals("Stammbaum anzeigen")) {} 
          if (label.equals("Stammbaum-liste")) {} 
          if (label.equals("Personenliste")) {} 
      }        
    }  
    
    //Für ehe combo    
    class CMeinActionLauschercombo implements ItemListener {
        public void itemStateChanged(ItemEvent e) {
            status_auswahl_ehepartner=0;
            int index= p_ehe.getSelectedIndex()+1;
            if (e.getStateChange() != e.DESELECTED ) {
            	textfeld[10].setText(Ehepartner[akt_person][index-1][1]);
                textfeld[11].setText(Ehepartner[akt_person][index-1][2]);	  
                bearbeiten_status(); bearbeiten_status();
            }            
        }
    }
    class Actioncombo extends MouseAdapter{
        JComboBox combo;
        public Actioncombo(JComboBox l){combo = l;}    
        public void mouseClicked(MouseEvent e){
        	status_auswahl_ehepartner++;
        	System.out.println(status_auswahl_ehepartner);
        	if (status_auswahl_ehepartner>=2) {
        		status_auswahl_ehepartner=0;
        		int index = combo.getSelectedIndex();
        		if (!(combo.getSelectedItem()).equals("Neu")){
        		akt_person=Integer.parseInt (Ehepartner[akt_person][index][0])-1;
        		eintragen();
        		}
        				
        	}
        	
        }
       }
    //für Beruf combo
    class CMeinActionLauschercombo2 implements ItemListener {
        public void itemStateChanged(ItemEvent e) {
            status_auswahl_ehepartner=0;
            int index= p_beruf.getSelectedIndex()+1;
            if (e.getStateChange() != e.DESELECTED ) {
            	p_notiz.setText(Beruf[akt_person][0][1]);
            	p_notiz.setText(Beruf[akt_person][index-1][1]);                  
                bearbeiten_status(); bearbeiten_status();
            }            
        }
    }
    
    //Listen
    class ActionJList extends MouseAdapter{
      JList listen;
      public ActionJList(JList l){listen = l;}      

      public void mouseClicked(MouseEvent e){
    	  
       int index = listen.locationToIndex(e.getPoint());

       ListModel dlm = listen.getModel();

       Object item = dlm.getElementAt(index);
       
       String name=item + "";
       if (!(name.equals("null")) && bearbeiten_status!=1) suche(false,false,name,"",true);
       System.out.println(":" +name+":");
      }
     }
    
    //einfügend er Objekte ohne Schaltfläschen
    Panel panel1 = new Panel();
    panel1.setLayout(gbl);   
    gbc.fill =GridBagConstraints.BOTH;

    // Die Abständer der einzelnen GUI-Elemente zu den gedachten Gitterlinien festgelegen:
    gbc.insets = new Insets(2,2,2,2);  

    //Menü  #####################################################################################################
    listener= new CMeinActionLauscher();
    JMenuBar menueleiste =new JMenuBar();
    JMenu menu1 =new JMenu("Programm");
    JMenu menu2 =new JMenu("Datenbank");
    JMenu menu3 =new JMenu("Datenbank");
    JMenu menu4 =new JMenu("Weiteres");
    
    JMenuItem[] items1 = {	addMenuItem("Neue Cronik", menu1), 
    						addMenuItem("Cronik laden", menu1),
	    					addMenuItem("Cronik speichern", menu1),
	    					addMenuItem("Programm beenden", menu1)    					
    					 };
    JMenuItem[] items2 = {	addMenuItem("Aktuelle Person bearbeiten", menu2),
							addMenuItem("Vater zeigen", menu2),
							addMenuItem("Mutter zeigen", menu2),
							addMenuItem("Nummer suchen", menu2),
							addMenuItem("Wert suchen", menu2)  						
						}; 
    
    JMenuItem[] items3 = {	addMenuItem("Stammbaum anzeigen", menu3),
    						addMenuItem("Stammbaum-liste", menu3),
    						addMenuItem("Personenliste", menu3),
						 						
						 }; 
    JMenuItem[] items4 = {	addMenuItem("Entwickler", menu4)}; 

    menueleiste.add(menu1);
    menueleiste.add(menu2);
    menueleiste.add(menu3);
    setJMenuBar(menueleiste);
    
    // Infos  #####################################################################################################
    JLabel text[] =new JLabel [23];
    text[0] =new JLabel("Name: ",JLabel.RIGHT);
    text[1] =new JLabel("Vorname: ",JLabel.RIGHT);
    text[2] =new JLabel("Geburtsname: ",JLabel.RIGHT);
    text[3] =new JLabel("w. Name: ",JLabel.RIGHT);
    text[4] =new JLabel("geboren am: ",JLabel.RIGHT);
    text[5] =new JLabel("geboren in: ",JLabel.RIGHT);
    text[6] =new JLabel("Geschlecht: ",JLabel.RIGHT);
    text[7] =new JLabel("getauft am: ",JLabel.RIGHT);
    text[8] =new JLabel("getauft in: ",JLabel.RIGHT);
    text[9] =new JLabel("Konfession: ",JLabel.RIGHT);
    text[10] =new JLabel("Beruf",JLabel.RIGHT);
    text[11] =new JLabel("Notiz: ",JLabel.RIGHT);
    text[12] =new JLabel(" ",JLabel.RIGHT);
    text[13] =new JLabel(" ",JLabel.RIGHT);
    text[14] =new JLabel(" ",JLabel.RIGHT);
    text[15] =new JLabel(" ",JLabel.RIGHT);
    text[16] =new JLabel("Ehepartner: ",JLabel.RIGHT);
    text[17] =new JLabel("Hochzeit am: ",JLabel.RIGHT);
    text[18] =new JLabel("Hochzeit in: ",JLabel.RIGHT);
    text[19] =new JLabel("gestorben am: ",JLabel.RIGHT);
    text[20] =new JLabel("gestorben in: ",JLabel.RIGHT);
    text[21] =new JLabel("beerdigt am: ",JLabel.RIGHT);
    text[22] =new JLabel("beerdigt in: ",JLabel.RIGHT);

    gbc.weighty=0;
    gbc.gridx = 0; 
    gbc.gridheight = 1; 
    gbc.gridwidth = 1;		
    gbc.gridy = 1;

    for(int i = 0; i < text.length; i++){
        gbl.setConstraints(text[i], gbc);
        panel1.add(text[i]);
        gbc.gridy = gbc.gridy  + 1;
        }        
    
    //Listen     #####################################################################################################
    gbc.gridy = 1;
    gbc.gridx = 4; 
    gbc.gridheight = 1;
    gbl.setConstraints(p_gesch , gbc);
    panel1.add(p_gesch );
    gbc.gridy = 19;
    gbl.setConstraints(p_eltern , gbc);
    panel1.add(p_eltern );
    gbc.gridy = 10;
    gbl.setConstraints(p_kinder , gbc);
    panel1.add(p_kinder);
        
    gbc.gridx = 4; 
    gbc.gridheight = 1;   	
 
    gbc.gridy = 1;
    p_geschwister_ändern.setMargin(new Insets(0, 0, 0, 0));
    p_geschwister_ändern.setFont(new Font("Arial", Font.PLAIN,11));
    gbl.setConstraints(p_geschwister_ändern , gbc);
    p_geschwister_ändern.setVisible(false);
    p_geschwister_ändern.addActionListener(new CMeinActionLauscher());
    panel1.add(p_geschwister_ändern );
    
    gbc.gridy = 10;
    p_kinder_ändern.setMargin(new Insets(0, 0, 0, 0)); 
    System.out.println(p_kinder_ändern.getFont());    
    p_kinder_ändern.setFont(new Font("Arial", Font.PLAIN,11));
    gbl.setConstraints(p_kinder_ändern , gbc);        
    p_kinder_ändern.setVisible(false);
    p_kinder_ändern.addActionListener(new CMeinActionLauscher());
    panel1.add(p_kinder_ändern );
    
    gbc.gridy = 19;
    p_eltern_ändern.setMargin(new Insets(0, 0, 0, 0));
    p_eltern_ändern.setFont(new Font("Arial", Font.PLAIN,11));
    gbl.setConstraints(p_eltern_ändern , gbc);
    p_eltern_ändern.setVisible(false);
    p_eltern_ändern.addActionListener(new CMeinActionLauscher());
    panel1.add(p_eltern_ändern);
    
    gbc.gridy = 2;
    gbc.gridx = 4; 
    gbc.gridheight = 8;
    gbc.gridwidth = 2;	
    gbl.setConstraints(list, gbc);
    panel1.add(list);
    gbc.gridy = 11;
    gbc.gridheight = 8;
    gbl.setConstraints(list3, gbc);
    panel1.add(list3);
    gbc.gridy =20;
    gbc.gridheight = 3;
    gbl.setConstraints(list2, gbc);
    panel1.add(list2);
    list.addMouseListener(new ActionJList(list));
    list2.addMouseListener(new ActionJList(list2));
    list3.addMouseListener(new ActionJList(list3));
    list.setBorder(BorderFactory.createLineBorder(Color.BLACK));  
    list2.setBorder(BorderFactory.createLineBorder(Color.BLACK));  
    list3.setBorder(BorderFactory.createLineBorder(Color.BLACK));  
   
    //Eintrageflächen   #####################################################################################################
    gbc.gridx = 1; 
    gbc.gridheight = 1;  
    gbc.gridwidth = 2;		
    gbc.gridy = 1;
    
    for(int i = 0; i < textfeld.length; i++){
    	textfeld[i] =new JTextField(10);
    	textfeld[i].setDocument(new SetMaxText(35));
    	textfeld[i].setEditable(false) ;
        }     

    for(int i = 0; i < 10; i++){
        gbl.setConstraints(textfeld[i], gbc);
        panel1.add(textfeld[i]);
        gbc.gridy = gbc.gridy  + 1;
        }   
    
    gbc.gridy = 11;
    gbc.gridwidth = 1;		
    gbl.setConstraints(p_beruf, gbc);
    p_beruf.setPrototypeDisplayValue("XXXXXXXXXXXXXXXXXXXXXXXXX"); 
    p_beruf.addItemListener(new CMeinActionLauschercombo2());
    panel1.add(p_beruf);
    gbc.gridx = 2;
    gbc.gridheight = 3;      
    p_beruf_ändern.addActionListener(new CMeinActionLauscher());
    p_beruf_ändern.setVerticalAlignment(SwingConstants.TOP);    
    Font drehen_von_schrift = p_beruf_ändern.getFont();
    AffineTransform at = new AffineTransform();		    
    at.rotate( 1.57d );	
    p_beruf_ändern.setFont(drehen_von_schrift.deriveFont( at ));     
    gbl.setConstraints(p_beruf_ändern , gbc);
    panel1.add(p_beruf_ändern);
    p_beruf_ändern.setVisible(false);    
    gbc.gridheight = 4; 
    personbearbeitenlabel.setVerticalAlignment(SwingConstants.TOP);    
    Font drehen_von_schrift2 = personbearbeitenlabel.getFont();
    personbearbeitenlabel.setFont(drehen_von_schrift2.deriveFont( at ));     
    gbl.setConstraints(personbearbeitenlabel , gbc);
    panel1.add(personbearbeitenlabel);
    personbearbeitenlabel.setVisible(true);    
    
    gbc.gridx = 1;
    gbc.gridy = 12;
    gbc.gridheight = 5;  
    p_notiz.setEditable(false);  
    gbl.setConstraints(p_notiz, gbc);
    p_notiz.setLineWrap(true);
    JScrollPane scroll_notiz =new JScrollPane();
    scroll_notiz.getViewport().add(p_notiz);
    scroll_notiz.getViewport().setView(p_notiz);    
    panel1.add(p_notiz);
    gbc.gridy = 17;
    gbc.gridheight = 1;  
    p_ehe.setPrototypeDisplayValue("XXXXXXXXXXXXXXXXXXXXXXXXX"); 
    gbl.setConstraints(p_ehe, gbc);
    panel1.add(p_ehe);
    p_ehe.addItemListener(new CMeinActionLauschercombo());
    p_ehe.addMouseListener(new Actioncombo(p_ehe));
    gbc.gridx = 2;    
    gbc.gridheight = 3;  

    p_ehe_ändern.addActionListener(new CMeinActionLauscher()); 
    p_ehe_ändern.setVerticalAlignment(SwingConstants.TOP);
    drehen_von_schrift = p_ehe_ändern.getFont(); 
    p_ehe_ändern.setFont(drehen_von_schrift.deriveFont( at )); 
    gbl.setConstraints(p_ehe_ändern , gbc);
    panel1.add(p_ehe_ändern);
    gbc.gridheight = 1;  
    gbc.gridx = 1;
    gbc.gridwidth = 1;	
    gbc.gridy = 18;
        
    for(int i = 10; i < 16; i++){
        gbl.setConstraints(textfeld[i], gbc);
        panel1.add(textfeld[i]);
        gbc.gridy = gbc.gridy  + 1;
        if (i==11)  gbc.gridwidth = 2;	
        }    
    
    JLabel text21 =new JLabel("....................................................................................................................................................................................................................................................................................................................................................... ");
    gbc.gridy = 24;
    gbc.gridwidth = 6;	
    gbc.gridx=0; 
    gbl.setConstraints(text21 , gbc);
    panel1.add(text21 );

    //Bildfläsche    ##################################################################################################### 
    m_bildanzeige = new CBildLeinwand();
    m_dateiname = null;
    m_aktBild = null;
    gbc.gridx=3; 
    gbc.gridy=1; 
    gbc.gridwidth = 1;	
    gbc.gridheight = 22; 
    m_bildanzeige.setPreferredSize(new Dimension(50, 100));
    gbl.setConstraints(m_bildanzeige, gbc);
    panel1.add(m_bildanzeige);  

    gbc.gridx=3; 
    gbc.gridy=23; 
    gbc.gridheight = 1; 
    gbl.setConstraints(bildlaufleiste, gbc);
    bildlaufleiste.addAdjustmentListener(this);
    panel1.add(bildlaufleiste);

    //breite festlegen   #####################################################################################################   
    gbc.gridwidth = 1;	
    gbc.gridheight = 1;  
    JLabel breite1 =new JLabel(".........................................");
    gbc.gridy = 0;
    gbc.gridx=0; 
    //gbc.weightx=0.1;
    gbl.setConstraints(breite1 , gbc);
    panel1.add(breite1);
    JLabel breite2 =new JLabel("........................................................................................."); 
    gbc.gridy = 0;
    gbc.gridx=1; 
    gbc.gridwidth = 2;
    //gbc.weightx=0.2;
    gbl.setConstraints(breite2 , gbc);
    panel1.add(breite2 );
    JLabel breite3 =new JLabel("...........................................................................................................................................");
    gbc.gridy = 0;
    gbc.gridx=3; 
    gbc.gridwidth = 1;	
    //gbc.weightx=0.4;
    gbl.setConstraints(breite3 , gbc);
    panel1.add(breite3 ); 
    JLabel breite4 =new JLabel("................................................................");
    gbc.gridy = 0;
    gbc.gridx=4; 
    gbc.gridwidth = 2;	
    //gbc.weightx=0.1;
    gbl.setConstraints(breite4 , gbc);
    panel1.add(breite4 );
    JLabel breite5 =new JLabel("....");
    gbc.gridy = 0;
    gbc.gridwidth = 1;	
    gbc.gridx=7; 
    //gbc.weightx=0.0;
    gbl.setConstraints(breite5 , gbc);
    panel1.add(breite5 );

    //allgemeinenotizen   ##################################################################################################### 
    gbc.gridy = 25;
    gbc.gridx = 0; 
    gbc.gridheight = 3;  
    gbc.gridwidth = 6;	
    gbc.weighty  =1;
    p_notallg.setEditable(true);
    p_notallg.setLineWrap(true);
    JScrollPane scroll_notiz2 =new JScrollPane();
    scroll_notiz2.getViewport().add(p_notallg);
    scroll_notiz2.getViewport().setView(p_notallg);  
    p_notallg.setBorder(BorderFactory.createLineBorder(Color.BLACK));  
    gbl.setConstraints(p_notallg, gbc);
    panel1.add(p_notallg);
          
    // Kopf schaltfläschen
    Panel panel2 = new Panel();
    panel2.setLayout(new FlowLayout());
    gbc.gridx=0; 
    gbc.gridy=0;
    gbl.setConstraints(p_num , gbc);
    panel2.add(p_num);
    gbc.gridx=1; 
    gbl.setConstraints(p_nummer , gbc);
    panel2.add(p_nummer);
    gbc.gridx=2; 
    gbc.gridheight = 1;
    gbl.setConstraints(personbearbeitenbutton , gbc);
    personbearbeitenbutton.setVisible(false);
    panel2.add(personbearbeitenbutton);
    gbc.gridx=2; 
    gbc.gridheight = 1;
    gbl.setConstraints(personbearbeitenbuttonsave , gbc);
    panel2.add(personbearbeitenbuttonsave);    
    personbearbeitenbuttonsave.setVisible(false);
    personbearbeitenbuttonsave.addActionListener(new CMeinActionLauscher());
    personbearbeitenbutton.addActionListener(new CMeinActionLauscher());
 

L-ectron-X

Gesperrter Benutzer
In Zeile 512 hast du ein Panel instanziiert. Das wird vermutlich nicht zu deinem Problem führen, sollte aber berichtigt werden.
Dann habe ich gesehen, dass du regen Gebrauch von GridBagLayout machst, was an sich nicht verkehrt ist. Aber wenn man da auch nur einen kleinen Fehler macht, verzeiht einem das GridBagLayout dies nicht.
Möglicherweise hast du irgendwo eine bereits gesetzt Komponente durch eine verkehrte Positionierung einer weiteren Komponente in der gleichen Zelle überschrieben.
Oder eben eine Instanzvariable mit einer lokalen Variable überschrieben.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P TextField beim klicken von JButton speichern AWT, Swing, JavaFX & SWT 17
Z TextField aus ActionListener von JButton verändern AWT, Swing, JavaFX & SWT 10
G JButton mit importFiles-Funktion auf JDrawPane AWT, Swing, JavaFX & SWT 5
B JButton Search AWT, Swing, JavaFX & SWT 8
B Swing JButton mit KeyListener AWT, Swing, JavaFX & SWT 3
L JButton durch Mausklick auslösen und Enter-Taste AWT, Swing, JavaFX & SWT 2
N Erlennen ob JButton gedrückt ist AWT, Swing, JavaFX & SWT 6
D JButton Form verändern AWT, Swing, JavaFX & SWT 4
R Grafik per JButton laden und austauschen lassen AWT, Swing, JavaFX & SWT 14
SvenPittelkow Programm soll auf JButton warten bis der geklickt wurde AWT, Swing, JavaFX & SWT 1
Badebay Problem mit JButton AWT, Swing, JavaFX & SWT 2
Z Swing Drag and Drop mit einem JButton AWT, Swing, JavaFX & SWT 1
Z Swing Kann man auf JButton zeichenen AWT, Swing, JavaFX & SWT 3
J JButton Icon hinzufügen AWT, Swing, JavaFX & SWT 5
U Swing JButton mit Icon AWT, Swing, JavaFX & SWT 7
ms_cikar Jbutton erzeugt neue Buttons AWT, Swing, JavaFX & SWT 2
Drachenbauer Swing Wie ändere ich die Farbe der Konturen von jButton und jCombobox? AWT, Swing, JavaFX & SWT 18
Drachenbauer Swing Wie ändere ich die helle geklickt-Farbe von einem JButton? AWT, Swing, JavaFX & SWT 4
A Swing JButton mit Pfeiltasten bewegen AWT, Swing, JavaFX & SWT 6
F Swing Scrollbare Liste von JButton AWT, Swing, JavaFX & SWT 4
Hatsi09 JButton text layout AWT, Swing, JavaFX & SWT 9
J JButton zum ändern Der Schriftart/Schriftgröße AWT, Swing, JavaFX & SWT 2
A Swing JButton aussehen AWT, Swing, JavaFX & SWT 12
J jButton soll nach klicken eine Variable um 1 erhöhen AWT, Swing, JavaFX & SWT 2
Legi Swing JButton Icon verschiebt sich AWT, Swing, JavaFX & SWT 2
T Swing Änderung des ActionListener Events nach Klick auf JButton AWT, Swing, JavaFX & SWT 2
S Swing JButton verschwindet nach Compilieren AWT, Swing, JavaFX & SWT 8
B Swing Posistion von JButton auslesen gibt immer 0 aus AWT, Swing, JavaFX & SWT 1
J Thread kennt JButton nicht. AWT, Swing, JavaFX & SWT 11
G Swing JButton ändert (unerwünscht) Größe bei Ausführung AWT, Swing, JavaFX & SWT 4
MR._FIRE_Flower Variable setzten mit JButton AWT, Swing, JavaFX & SWT 5
S Mit JButton neues Fester öffnen und das alte schließen AWT, Swing, JavaFX & SWT 3
T JButton wird beim vergrößern des Fensters erst sichtbar AWT, Swing, JavaFX & SWT 4
R Swing Verändern der Ausrichtung JButton und neu anzeigen AWT, Swing, JavaFX & SWT 2
G Swing JButton - Keine Klickanimation AWT, Swing, JavaFX & SWT 4
Joker4632 JButton nicht sichtbar, aber funktionsfähig AWT, Swing, JavaFX & SWT 8
B Swing JButton deaktivieren, wenn nicht alle JTextFields ausgefüllt sind. AWT, Swing, JavaFX & SWT 2
D JButton per Tastenkombi auswählen AWT, Swing, JavaFX & SWT 2
K JButton nicht sichtbar machen für User 2 AWT, Swing, JavaFX & SWT 4
L Swing JButton soll link öffnen AWT, Swing, JavaFX & SWT 1
K JButton auf anderer Klasse AWT, Swing, JavaFX & SWT 6
A JButton soll durch anklicken die Farbe wechseln AWT, Swing, JavaFX & SWT 8
T KeyListener funktioniert nicht wenn ich ein JButton hinzufüge AWT, Swing, JavaFX & SWT 1
R Swing ActionListener bei JButton AWT, Swing, JavaFX & SWT 9
B JButton -> Rahmen wegbekommen AWT, Swing, JavaFX & SWT 7
N JButton über benutzerdefinierte paintComponent setzen AWT, Swing, JavaFX & SWT 3
T JButton überlagern sich und werden erst beim Mausscrollen sichtbar AWT, Swing, JavaFX & SWT 2
B JButton erscheint in JFrame, obwohl er diesem nicht zugeordnet wurde! AWT, Swing, JavaFX & SWT 1
M JButton Probleme AWT, Swing, JavaFX & SWT 14
T Klasse über JButton schließen AWT, Swing, JavaFX & SWT 4
M Textfarbe JButton verändern AWT, Swing, JavaFX & SWT 2
N JButton ausblenden AWT, Swing, JavaFX & SWT 2
M Swing jButton Text verschwindet AWT, Swing, JavaFX & SWT 2
C Swing JButton wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
stylegangsta JLabel durch Klick auf JButton einblenden AWT, Swing, JavaFX & SWT 16
stylegangsta Eigene Klasse für JButton aus dem JFrame abrufen AWT, Swing, JavaFX & SWT 29
stylegangsta MouseEvents aus JButton aufrufen AWT, Swing, JavaFX & SWT 3
stylegangsta JButton Transparent anzeigen AWT, Swing, JavaFX & SWT 9
stylegangsta JButton Fehelr javax.swing.ImageIcon.<init>(Unknown Source) AWT, Swing, JavaFX & SWT 24
X Swing JButton's zum JScrollPane hinzufügen geht nicht. Bitte um Hilfe. AWT, Swing, JavaFX & SWT 9
D JButton - Nur Icon anzeigen / transparenter Hintergrund AWT, Swing, JavaFX & SWT 2
S JButton-Label vergrößern AWT, Swing, JavaFX & SWT 2
J Swing Basics - JButton funktioniert nicht. AWT, Swing, JavaFX & SWT 1
L JButton mit ImageIcon/Fehlermeldung AWT, Swing, JavaFX & SWT 1
D jButton Problem, ein Rieser Button bedeckt das ganze frame AWT, Swing, JavaFX & SWT 1
L Array mit JButton, wie rausfinden auf welche JButton geklickt wurde + index des JButtons ausgeben AWT, Swing, JavaFX & SWT 4
K (GUI) JButton Farbe bei druck ändern AWT, Swing, JavaFX & SWT 3
L JButton mit Image AWT, Swing, JavaFX & SWT 5
fLooojava JButton [Focus) AWT, Swing, JavaFX & SWT 4
M JButton - Listener AWT, Swing, JavaFX & SWT 1
D jButton auf von jFrame erzeugtem jDialog AWT, Swing, JavaFX & SWT 16
L JButton flackern - Programm hängt sich auf AWT, Swing, JavaFX & SWT 3
L JButton - Größe anders als erwartet AWT, Swing, JavaFX & SWT 2
1 JButton nach Klick ausblenden AWT, Swing, JavaFX & SWT 6
X Swing 1 JButton bedeckt meine ganze Frame aber Warum? AWT, Swing, JavaFX & SWT 2
S Größe und Farbe vom JButton festlegen AWT, Swing, JavaFX & SWT 2
H Swing JList/JTable mit JButton, JTextField, Image, JComboBox und JLable AWT, Swing, JavaFX & SWT 2
J JButton neu zeichnen lassen AWT, Swing, JavaFX & SWT 9
S JButton u. Label auf paint-Methode AWT, Swing, JavaFX & SWT 1
HoloYoitsu Swing JButton in verschiedenen Winkeln drehen AWT, Swing, JavaFX & SWT 0
J vocab1 = new JButton(""+voc1.get(nr).toString()+""); AWT, Swing, JavaFX & SWT 16
A JButton wird bei ActionListener nicht "angenommen" AWT, Swing, JavaFX & SWT 7
BRoll JButton Text nicht ausblenden ("...") AWT, Swing, JavaFX & SWT 2
I JFrame mit JButton schließen? AWT, Swing, JavaFX & SWT 0
D JList&JButton erst nach Resize des JFRame sichtbar AWT, Swing, JavaFX & SWT 2
J Swing JFrame slideout, wenn JButton gedrückt wurde AWT, Swing, JavaFX & SWT 0
S Swing Rückmeldung für JButton AWT, Swing, JavaFX & SWT 4
R AWT JLabel oder JButton aktualisieren AWT, Swing, JavaFX & SWT 1
L JButton im Frame fest verankern AWT, Swing, JavaFX & SWT 0
M Swing Mix JComboBox - JButton? AWT, Swing, JavaFX & SWT 6
U Event Handling JButton Actionevent: starte Spiel AWT, Swing, JavaFX & SWT 4
E JButton füllt ganzes JPanel auf AWT, Swing, JavaFX & SWT 6
P Verbuggte custom JButton unter Windows AWT, Swing, JavaFX & SWT 9
W Swing JButton lässt sich nicht anzeigen AWT, Swing, JavaFX & SWT 8
Kandum Swing JButton - onclick -> Grafikfehler AWT, Swing, JavaFX & SWT 2
R JButton durch Enter auslösen AWT, Swing, JavaFX & SWT 7
T Swing JButton per Drag&Drop verschieben AWT, Swing, JavaFX & SWT 5
M Problem mit FlowLayout, JLabel und JButton AWT, Swing, JavaFX & SWT 4
M JButton wird von JTree überdeckt AWT, Swing, JavaFX & SWT 4
D Swing JButton.setenabled(true) funktioniert nicht AWT, Swing, JavaFX & SWT 12

Ähnliche Java Themen

Neue Themen


Oben