Hauptklasse 'JFrame' (Java Eclipse Neon) konnte nicht gefunden werden?

2 Antworten

Im Projekt als Hauptklasse deine Klasse angeben.

Du hast deine Hauptklasse falsch konfiguriert.

5

Und wie behebe ich das?

0
35

In deinem IDE die richtige einstellen... Mal im Ernst, es ist nicht gerade schwer die Hauptklasse auszuwählen, das lernt man schon beim Hello World Tutorial, wenn man mit Swing arbeitet sollte man das wissen.

0
35
@StefanKostik

Und? Es ist genau das gleiche wie mit Konsolenprogrammen, du hast als Hauptklasse JFrame eingestellt, was aber garantiert nicht deine Hauptklasse ist.

1
35
@StefanKostik

Da wo du JFrame als Hauptklasse ausgewählt hast wählst du ShowAFrame aus, wenn du das nicht schaffst hast du eindeutig irgendwas beim lernen falsch gemacht.

0

public void xy() vs public static void main(String[] args)?

Hallo,

in der Schule lernen wir in Informatik seit cirka 6 Monaten das Programmieren mit Java.

Wir benutzen dafür BlueJ und Greenfoot, in denen schon Fenster und Objekte existieren, weswegen einem einige Sachen wie das manuelle Erstellen eines Objektes nicht gezeigt werden.

Um eine Methode als Setter zu schreiben, haben wir bisher immer "public" + "void" + "Name" + "(möglicher Parameter)" benutzt.

In vielen Tutorials im Internet und in vielen Codes sehe ich allerdings oft dieses "public static void main(String[] args)", was bedeutet das?

Wenn ich z.B. eine Methode "public void geburtstag() {

alter++

} "

oder so etwas habe, wie würde man das mit public static void main(String[] args) schreiben? Oder kann man es vielleicht kurz erklären?

Danke schonmal im Vorraus

...zur Frage

Java / Swing: Problem mit dispose();?

Ich habe ein Problem mit folgendem Code. Ich will, dass, wenn man das JMenuItem: "Schliesen" anklickt, sich das Programm beendet.

Code:

import java.awt.*; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import javax.swing.*;

public class FrmMain extends JFrame implements ActionListener {
  private JPanel contentPane;

  public FrmMain() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 600, 456);

    JMenuBar menuBar = new JMenuBar();
    setJMenuBar(menuBar);

    JMenu mnDatei = new JMenu("Datei");
    menuBar.add(mnDatei);

    JMenuItem mntmSchliesen = new JMenuItem("Schliesen");
    mnDatei.add(mntmSchliesen);
    mntmSchliesen.addActionListener(this);

    contentPane = new JPanel();

    class Bob implements ActionListener {
      @Override
      public void actionPerformed(ActionEvent event) {
        if (event.getSource() == mntmSchliesen)
          dispose(); // *** Mein Problem ***
      }
    }
  }

  public static void main(String[] args) {
    FrmMain frame = new FrmMain();
    frame.setVisible(true);
  }
}
...zur Frage

Java: Auf ein Objekt einer anderen Methode zugreifen?

Hallo,

ich bin in Java ein absoluter Neuling und habe eine Frage.

Ich möchte in meinem Programm (Code ist unten) in der Methode buildSurface ein JFrame ("Fenster") und als Inhalt ein JLabel ("Mark1") erstellen. Das habe ich soweit hinbekommen, jedoch möchte ich jetzt in der anderen Methode overwrite den Text des Labels ändern.

Code:

import javax.swing.JFrame;
import javax.swing.JLabel;

public class Main {
  public static void buildSurface() {
    JFrame Surface= new JFrame("Fenster");
    Surface.setSize(800, 450);
    JLabel Mark1 = new JLabel("alterText");
    Surface.add(Mark1);
    Surface.setVisible(true);
    Mark1.setText("Hey");
  }

  public static void overwrite() {
    Mark1.setText("neuerText");
  }

  public static void main(String[] args) {
    buildSurface();
    overwrite();
  }
}

Ich würde mich sehr freuen, wenn jemand den Code korrigieren oder mir einen Tipp geben könnte.

Vielen Dank für eure Antworten

...zur Frage

Was möchtest Du wissen?