Auslagern von Methoden bei einem JFrame

trytocatch

Mitglied
Hey Leute,
ich habe folgendes Problem: Ich möchte zur Übersichtlichkeit eine Rechen-Methode auslagern.
Allerdings funktioniert z.B. ein private void nur direkt unter dem Objekt, in dem ich es erstelle, aber nicht überall im Code.
Vielen Dank schonmal!
So sieht mein Code jetzt aus:
Java:
package gui;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

public class AlteZaehlweise extends JFrame {

   private JPanel contentPane;
   private JTextField textField;

   /**
    * Launch the application.
    */
   public static void main(String[] args) {
       EventQueue.invokeLater(new Runnable() {
           public void run() {
               try {
                   AlteZaehlweise frame = new AlteZaehlweise();
                   frame.setVisible(true);
               } catch (Exception e) {
                   e.printStackTrace();
               }
           }
       });
   }

   /**
    * Create the frame.
    */
 
 
   public AlteZaehlweise() {
     
 
     
       setTitle("Alte Zählweise");
       setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       setBounds(100, 100, 450, 300);
       contentPane = new JPanel();
       contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
       setContentPane(contentPane);
       contentPane.setLayout(null);
     
       JLabel lblGebenSieEine = new JLabel("Geben sie eine St\u00FCckzahl an");
       lblGebenSieEine.setBounds(25, 22, 154, 14);
       contentPane.add(lblGebenSieEine);
     
 
     
       JLabel AnzahlGros = new JLabel("");
       AnzahlGros.setBounds(25, 93, 46, 14);
       contentPane.add(AnzahlGros);
     
       JLabel lblGros = new JLabel("Gros");
       lblGros.setBounds(85, 93, 46, 14);
       contentPane.add(lblGros);
     
       JLabel AnzahlSchock = new JLabel("");
       AnzahlSchock.setBounds(25, 129, 46, 14);
       contentPane.add(AnzahlSchock);
     
       JLabel lblSchock = new JLabel("Schock");
       lblSchock.setBounds(85, 129, 46, 14);
       contentPane.add(lblSchock);
     
       JLabel AnzahlDutzend = new JLabel("");
       AnzahlDutzend.setBounds(25, 164, 46, 14);
       contentPane.add(AnzahlDutzend);
     
       JLabel lblDutzend = new JLabel("Dutzend");
       lblDutzend.setBounds(85, 164, 46, 14);
       contentPane.add(lblDutzend);
     
       JLabel lblAnzahlstck = new JLabel("");
       lblAnzahlstck.setBounds(25, 205, 46, 14);
       contentPane.add(lblAnzahlstck);
     
       JLabel lblStck = new JLabel("St\u00FCck");
       lblStck.setBounds(85, 205, 46, 14);
       contentPane.add(lblStck);
     
 
       textField = new JTextField();
       textField.addKeyListener(new KeyAdapter() {
           @Override
           public void keyPressed(KeyEvent e) {
               if(e.getKeyCode()==KeyEvent.VK_ENTER) {
                 
                   umrechnen();
                 
               }
           }

         
       });
       textField.setBounds(25, 43, 141, 20);
       contentPane.add(textField);
       textField.setColumns(10);
       Bedienungskomfort();
     
     
     
       JButton btnUmrechnungButton = new JButton("Umrechnung in alte Z\u00E4hlma\u00DFe");
       btnUmrechnungButton.addActionListener(new ActionListener() {
           public void actionPerformed(ActionEvent arg0) {
           umrechnen();
             
           }
         
         
     
       });
     
       btnUmrechnungButton.setBounds(193, 42, 212, 23);
       contentPane.add(btnUmrechnungButton);
     
       JButton btnEnde = new JButton("Ende");
       btnEnde.addActionListener(new ActionListener() {
           public void actionPerformed(ActionEvent e) {
           System.exit(0);
           }
       });
       btnEnde.setBounds(316, 196, 89, 23);
       contentPane.add(btnEnde);
     
     
     

     
   }
     
 


   void umrechnen() {
       int a,gro,b,dut,c,scho,stue;
       try {
       a= Integer.parseInt(textField.getText());
       gro=a/144;
       AnzahlGros.setText(String.valueOf(gro));
       b=a%144;
       scho=b/60;
       AnzahlSchock.setText(String.valueOf(scho));
       c=b%60;
       dut=c/12;
       AnzahlDutzend.setText(String.valueOf(dut));
       stue=c%12;
       lblAnzahlstck.setText(String.valueOf(stue));
       Bedienungskomfort();
       } catch (Exception e) {
           JOptionPane.showMessageDialog(null, "Fehler");
           Bedienungskomfort();
       }
     
   }

   private  void Bedienungskomfort() {
       textField.requestFocus();
       textField.selectAll();
     
   }
 
   }
 
Zuletzt bearbeitet von einem Moderator:

Blender3D

Top Contributor
Code:
public class MyMathTools {
    public static double add(double a, double b) {
        return a + b;
    }
  ...
}
Du kannst Dir eine Klasse bauen, die Deine Hilfsfunktion in der Form realisiert.
 
X

Xyz1

Gast
Versetze Dich @trytocatch mal für einen Augenblick in unsere Lage, möchten helfen und müssen einen Haufen Sch* durchwühlen....
Code bitte in die richtigen Tags machen
 

fhoffmann

Top Contributor
Bin erst seit zwei Stunden Mitglied und kenne mich noch nicht aus
Dann schau doch mal in den roten Text unter der Mitteilung von DerWissende.

Und ansonsten gilt natürlich der Rat von Blender3D: Schreibe eine Klasse für die Oberfläche und eine eigene Klasse für Berechnungen - darin hast du Methoden, denen irgendwelche Zahlen als Parameter übergeben werden und die das Ergebnis zurückgeben.
 
X

Xyz1

Gast
ich habe folgendes Problem: Ich möchte zur Übersichtlichkeit eine Rechen-Methode auslagern.
Allerdings funktioniert z.B. ein private void nur direkt unter dem Objekt, in dem ich es erstelle,
Also Du kannst Methoden nicht innerhalb von Methoden schreiben.... (falls das die Frage)
(Methoden innerhalb Klassen innerhalb Methoden aber schon, nur nich first sub under top level).
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Methoden in großen Klassen gruppieren oder auslagern? Java Basics - Anfänger-Themen 10
K Vererbung Methoden in klassen auslagern und in mehreren Klassen verfügbar machen Java Basics - Anfänger-Themen 8
E OOP Methoden auslagern Java Basics - Anfänger-Themen 9
MrMilti einzelne Methoden einer Klasse auslagern Java Basics - Anfänger-Themen 6
S auslagern von Methoden in andere Klasse Java Basics - Anfänger-Themen 4
S Funktion in Klasse auslagern Java Basics - Anfänger-Themen 4
N Methode auslagern mal wieder Java Basics - Anfänger-Themen 8
R KeyListener auslagern Java Basics - Anfänger-Themen 3
J Threads Prozess in Thread auslagern Java Basics - Anfänger-Themen 2
B Erste Schritte JFrame in Klasse auslagern Java Basics - Anfänger-Themen 4
K Erste Schritte jpanel in einer klasse auslagern Java Basics - Anfänger-Themen 3
K Exceptions auslagern Java Basics - Anfänger-Themen 15
A Objekte in eigene Klasse auslagern Java Basics - Anfänger-Themen 2
D Programmteile in Klassen auslagern Java Basics - Anfänger-Themen 2
M MVC - gui auslagern Java Basics - Anfänger-Themen 2
K JPanel auslagern Java Basics - Anfänger-Themen 9
M Vererbung Auslagern von UI AbstractAction? Java Basics - Anfänger-Themen 2
D Codezeilen "auslagern" Java Basics - Anfänger-Themen 4
T ActionListener auslagern Java Basics - Anfänger-Themen 14
F Klasse bzw Objekt in eigenen Thread auslagern Java Basics - Anfänger-Themen 3
W Eventhandling auslagern Java Basics - Anfänger-Themen 4
M Java Objekte auf Platte auslagern. Java Basics - Anfänger-Themen 8
S Bild aus paint() Methode auslagern Java Basics - Anfänger-Themen 14
K SQL Statement formatieren + Swingzeug auslagern Java Basics - Anfänger-Themen 18
I Listenerklassen in externe Dateien auslagern? Java Basics - Anfänger-Themen 7
S Icons in Icon-Odner auslagern Java Basics - Anfänger-Themen 2
T Operation in Thread auslagern? Java Basics - Anfänger-Themen 7
N Mehrfach von Klassen benutze Methode in Interface auslagern? Java Basics - Anfänger-Themen 3
G Mtehoden auslagern Java Basics - Anfänger-Themen 10
P Thread auslagern Java Basics - Anfänger-Themen 4
G Daten auslagern? Java Basics - Anfänger-Themen 7
P class in neuen Thread auslagern Java Basics - Anfänger-Themen 3
G Zeichenklasse auslagern Java Basics - Anfänger-Themen 5
T classen auslagern Java Basics - Anfänger-Themen 16
F FileChooser auslagern Java Basics - Anfänger-Themen 2
N Methode auslagern Java Basics - Anfänger-Themen 4
emreiu Methoden Rekursive Methoden Runter- & Hochzählen Java Basics - Anfänger-Themen 2
U Funktionale Interfaces mit mehreren abstrakten Methoden? Java Basics - Anfänger-Themen 8
MoxMorris Einige Methoden aus verschiedenen Klassen nacheinander auszuführen läuft seltsam Java Basics - Anfänger-Themen 2
J Argumente in Methoden übergeben Java Basics - Anfänger-Themen 1
XWing Methoden rückgabe Problem? Java Basics - Anfänger-Themen 6
Say Class scope und Instance scope und Getter nur selbstgeschrieben Methoden Java Basics - Anfänger-Themen 11
I Gleiche Klassen und Methoden in unterschiedlichen Projekten nutzen Java Basics - Anfänger-Themen 2
N Klassen Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 4
Renjiroo Java Bmi Rechner mit Methoden Java Basics - Anfänger-Themen 4
frager2345 Thread - Methoden synchronized deklarieren Java Basics - Anfänger-Themen 10
M Designentscheidung von Attributen/Methoden im Falle von Vererbung Java Basics - Anfänger-Themen 8
berserkerdq2 Findet eine parallele Verarbeitung in Java bei Threads erst statt, wenn man die Methoden auch synchronized? Und wie sieht bei Conditions aus? Java Basics - Anfänger-Themen 8
Alen123 Erstes Arbeiten mit Methoden. Java Basics - Anfänger-Themen 5
berserkerdq2 Zwei Klassen Erben von der Klasse A, die eine Klasse kann ich an Methoden übergeben, die als Parameter A haben, die andere nicht? Java Basics - Anfänger-Themen 3
M Andere Methoden in anderen Klassen aufrufen Java Basics - Anfänger-Themen 11
L Methoden in anderen Klassen nutzen Java Basics - Anfänger-Themen 6
D Gerade oder ungerade Zahl mittels Methoden Java Basics - Anfänger-Themen 13
M Erklärung von Ausnahmebehandlung in Methoden Java Basics - Anfänger-Themen 13
S Methoden 2 non-static Methoden, trotzdem Fehler "non static method can not be referenced from a static context" Java Basics - Anfänger-Themen 9
L Rekursive Methoden Java Basics - Anfänger-Themen 14
X Wie erreiche ich, dass ein Robot weitere Attribute hat, die nicht materialisiert sind, sondern nur über get/ set-Methoden simuliert sind? Java Basics - Anfänger-Themen 1
C Problem mit mehreren Methoden + Scanner Java Basics - Anfänger-Themen 5
R Frage zu Methoden (Rückgabewert u. ohne.) Java Basics - Anfänger-Themen 2
W Verschiedene Methoden in einer Klasse in der Main aufrufen? Java Basics - Anfänger-Themen 8
W Methoden aufrufen - auch klassenübergreifend? Java Basics - Anfänger-Themen 9
Kotelettklopfer Methoden nicht aufrufbar Java Basics - Anfänger-Themen 34
R Schulaufgabe, Bruache Hilfe mit non-static Methoden Java Basics - Anfänger-Themen 2
S Vererbung Abstrakte Methoden: Wozu das Ganze?! Java Basics - Anfänger-Themen 7
S abstrakte methoden in subclass? Java Basics - Anfänger-Themen 7
S Methoden - Warum int wenn auch void? Java Basics - Anfänger-Themen 3
H Kann man Methoden öfter aufrufen? Java Basics - Anfänger-Themen 2
CptK Interface Functional interface mit mehreren Methoden Java Basics - Anfänger-Themen 6
P Objekt in mehreren Methoden verwenden. Java Basics - Anfänger-Themen 3
M Aufruf von statischen Methoden einer anderen Klasse Java Basics - Anfänger-Themen 15
lougoldi Verkettung von Methoden und Konstruktoren Java Basics - Anfänger-Themen 4
Zeppi OOP Methoden mit einander Verknüpfen Java Basics - Anfänger-Themen 6
A Löschen von Leerzeichen in einem char array ohne methoden Java Basics - Anfänger-Themen 6
A Parametar übergabe zwischen Methoden Java Basics - Anfänger-Themen 26
D Methoden nach einer bestimmten Reihenfolge ausführen. Java Basics - Anfänger-Themen 20
P Wie rufe ich Methoden mit einer Referenz auf eine Klasse||Objekt auf Java Basics - Anfänger-Themen 4
O Attribute die Methoden zählen Java Basics - Anfänger-Themen 5
M Bräuchte Hilfe bei diesen Methoden Java Basics - Anfänger-Themen 4
G Methoden Methoden mit versch. Datentypen Java Basics - Anfänger-Themen 1
T Ich habe eine Variabel die nicht Methoden übergreifend ist. Kann mir jemand Helfen :) Java Basics - Anfänger-Themen 5
Junger_Basileus Celsius -> Fahrenheit / Strukturierung in statischen Methoden Java Basics - Anfänger-Themen 7
J Verschachtelte Methoden Java Basics - Anfänger-Themen 9
H Methoden in anderen Methoden aufrufen Java Basics - Anfänger-Themen 6
Kawastori Hilfe bei Methoden Übung Java Basics - Anfänger-Themen 6
veryck Methoden Rekursive Methoden mit Rückgabeparameter Java Basics - Anfänger-Themen 9
C Methoden können nicht auf Instanzvariable der Klasse zugreifen Java Basics - Anfänger-Themen 3
P Methoden aufrufen - Fehler Java Basics - Anfänger-Themen 20
M konzeptuelle Frage: In welcher Klasse definiert man am Besten Methoden, die die Kommunikation mit dem User regeln? Java Basics - Anfänger-Themen 8
C eigene Methoden erstellen (Instanzmethoden) Java Basics - Anfänger-Themen 7
P Klasse hat keinen Zugriff auf getter/setter-Methoden eines Objektes Java Basics - Anfänger-Themen 9
B Methoden Methoden haben kein Zugriff auf variablen Java Basics - Anfänger-Themen 4
M Gettter/Setter Methoden Klassenfelder kapselung und zugriff? Java Basics - Anfänger-Themen 1
C Fernseher-Aufgabe (Methoden, Klassen und Objekte) Java Basics - Anfänger-Themen 63
C Taschenrechner (switch) in Taschenrechner mit Methoden umwandeln Java Basics - Anfänger-Themen 115
G Generics Methoden Java Basics - Anfänger-Themen 7
L Test-Methoden schreiben Java Basics - Anfänger-Themen 13
S throws bei Methoden Java Basics - Anfänger-Themen 4
L Best Practice Code Refactoring für Methoden mit fast gleicher Aufbau Java Basics - Anfänger-Themen 6
I Greedy Methode Methoden nutzen Java Basics - Anfänger-Themen 3
C Methoden-Parameter ist Interface Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben