zugriff von class a zu class b?

Status
Nicht offen für weitere Antworten.

PELLE

Bekanntes Mitglied
Code:
 public class A extends JFrame
{
    private JTextField homepageTF;
    private JLabel      homepageLB;
    private boolean infoErstellt = true;


    public A
    {
       setLayout(null); 
       add(homepageTF);
       homepageTF.setBounds(0,0,200,30); 
 

       homepageTF.changeFormat();

    }

}

Code:
 public class B // hier befinden sich nur die Methoden zu class A
{

    public void methode1()
   {
      //bla bla
  
   }

   public void changeFormat()
  {
      this.setForegroundcolor(Color.blue);
      this.seBackgroundcolor(Color.black);
  
  }


}

sollte das mit dem this in der methode unfug sein, geht es wenigstens dass ich die methode changeFormat der class B in class a aufrufen? oder wie mache ich das? von der class auf die andere class und deren variablem mit der class fremden methode zugreifen?
 
Dazu brauchst du in Klasse A lediglich eine Instanz der Klasse B

Code:
public class A extends JFrame 
{ 
    private JTextField homepageTF; 
    private JLabel      homepageLB; 
    private boolean infoErstellt = true; 
    private B instanzVonB;

    public A 
    { 
        instanzVonB = new B();
        instanzVonB.changeFormat();
       setLayout(null); 
       add(homepageTF); 
       homepageTF.setBounds(0,0,200,30); 


       homepageTF.changeFormat(); 

    } 

}
 
AlArenal hat gesagt.:
mattulla hat gesagt.:
PELLE hat gesagt.:
Code:
 public class B // hier befinden sich nur die Methoden zu class A


die Methoden einer Klasse schreibt man eigentlich auch in die selbige hinein, dafuer braucht man keine extra Klasse

Wie? Bewahrst du dein Reserverad nicht auch im Keller auf? 😉


doch, doch....und den Schluessel zum Keller hab ich bei meinem Nachbarn hinterlegt, will es ja den boesen Menschen die mein Auto geklaut haben nicht noch unnoetig leicht machen auch an das Reserverad zu kommen.
 
hehe da habt ihr beide gut gekontert LOL

ok Komissar matulla hat da schon recht :lol:

ich glaube ich machs doch logischer...

ich habe ein JFrame und in diesem befinden sich 3 JTabbedpanes sprich ich habe 3 oberflächen auf denen komponenten liegen.

Da jede oberfläche im moment bzw. in der Zukunft ca. 1000 Zeilen code beansprucht, wäre es doch am logischsten wenn ich die 3 inneren classe in je ne eigene .java datei verfrachte und die methoden bei den classes lasse? das wäre am übersichtlichsten denke ich!

So sieht meine jetztige Struktur aus ohne werte und methoden der übersichtlichkeithalber...

Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.border.*;
import javax.swing.WindowConstants;
import javax.swing.filechooser.FileFilter;
import javax.swing.ButtonGroup.*;
import java.io.*;
import java.text.*;
import java.util.Date;
import javax.swing.plaf.basic.BasicComboBoxRenderer;
import javax.swing.border.Border;
import javax.swing.filechooser.*;
import java.util.*;

 public class JTabbedPaneDemo extends JFrame
{

  public JTabbedPaneDemo()
 {



  }

  class PublishPanel extends JPanel implements ActionListener
  {
      public PublishPanel()
      {

      }

  }

  class SettingsPanel extends JPanel implements ActionListener
  {
      public SettingsPanel()
      {
     
      }

  }

  class AboutPanel extends JPanel
  {

     public AboutPanel()
    {
 
    }

  }

   public static void main(String args[])
   {
      JTabbedPaneDemo Fenster = new JTabbedPaneDemo();
      Fenster.setSize(964,620);
      Fenster.setLocationRelativeTo(null);
      Fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      Fenster.setResizable(false);
      Fenster.setVisible(true);
   }
}

ok habe nun 2 innere klassen in je eine .java datei ausgelagert und die 3. innere bleibt in der JTabbedPaneDemo.java
datei so passt es auch und ist gut strukturiert...
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben