Swing Einfache Frage zu JMenu

Status
Nicht offen für weitere Antworten.

ernst

Top Contributor
Hallo allerseits,
ich will in einer grafischen Oberfläche ein "Hilfemenü" erstellen, das wie folgt funktioniert:
Man kann einen Punkt "Hilfe" anklicken.
Dann geht ein Fenster auf, in dem eine Beschreibung, also irgend ein Text steht.
Wenn man den Text gelesen hat, kann man das Fenster schließen.
(So etwas Ähnliches gibt es ja auch in der Netbeans Entwicklungsumgebung:
Man klickt "Help" an und kann dann einen Text anschauen, den man wieder schliessen kann und der dann vom Bildschirm verschwindet)
Wie kann man so was in Java machen?
Geht das mit JMenu?

mfg
Ernst
 
Zuletzt bearbeitet von einem Moderator:

ernst

Top Contributor
JMenu für normale Menüs oben links z.B.,

JPopupMenu für rechte Maustaste irgendwo in der GUI
An example of the JPopupMenu in action : MenuSwing JFCJava

Danke für den Tipp,
1)
ich hatte mir schon gedacht, dass man das mit JMenu realisieren kann.
Ich wußte nur nicht wie man das Fenster konstruiert (und schließt).
Aber das klappt jetzt auch (Programm siehe unten).
Ich habe noch ein kleines Problem.
Wenn man mit

JTextArea text=new JTextArea();
text.setText("Programmbeschreibung:"+
"In die x-Position und die y-Position müssen positive ganze Zahlen" +
"geschrieben und jeweils mit ENTER bestätigt werden." +

Text in den JFrame (Fenster) schreibt, wird der Text nicht, wenn er an das Zeilenende des
Fensters kommt, umgebrochen und bei der nächsten Zeile weitergemacht.
Gibt es eine Möglichkeit dies einfach zu realiserern?

2)
Wie kann man lange Java-Anweisung, die nicht in eine Zeile passt auf mehrere Zeilen verteilen?
Ich habe bei
text.setText("...")
den "Trick" verwendet, dass ich mit + den Text auf mehreren Zeilen verteilt habe.
Geht das auch anders?
Es könnte ja sein, dass eine Anweisung keinen Text enthält (man also kein + verwenden kann),
diese aber trotzdem sehr lang ist

mfg
Ernst

Hier das ganze Programm
Java:
package jmenu2;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;


public class MainJMenu2 {
    public static void main(String[] args) {
	MyFenster myf = new MyFenster();
	myf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }
}

class MyFenster extends JFrame{
    private Container mycont;
    // Eine Zeichenfläche deklarieren
	private JPanel myp;
	private GridLayout myGL12;

	// Konstruktor
	public MyFenster(){
        // Menüzeile erstellen
        JMenuBar menuZeile = new JMenuBar();
        // Ein Menü festlegen
        JMenu hilfeMenu = new JMenu( "Hilfe" );
        // Ein Menü in der Menüzeile anbringen
        menuZeile.add( hilfeMenu );
        // Einen Menüeintrag erstellen
        JMenuItem beschreibungEintrag = new JMenuItem("Beschreibung");
        // Menüeintrag in das Menü anbringen
        hilfeMenu.add(beschreibungEintrag);
        // Menüzeile im JFrame anbringen
        setJMenuBar(menuZeile);
        // Wanze erstellen
        MyMenuListener ml= new MyMenuListener();
        // Wanze an Menüeintrag anbringen
        beschreibungEintrag.addActionListener(ml);
        // an Listener (zur Unterscheidung) weitergegeben
        beschreibungEintrag.setActionCommand("1");

        // Einen weiteren Menüeintrag erstellen
        JMenuItem infoEintrag = new JMenuItem("Info");
        // Menüeintrag in das Menü anbringen
        hilfeMenu.add(infoEintrag);
        // Wanze an Menüeintrag anbringen
        infoEintrag.addActionListener(ml);
        // an Listener (zur Unterscheidung) weitergegeben
        infoEintrag.setActionCommand("2");
		// Liefert die Stelle in MyFenster, an die montiert wird.
		mycont = getContentPane();

		myp = new JPanel();

        // Erzeugt ein Layout
        myGL12 = new GridLayout(1,2);

        myp.setLayout(myGL12);

        // Montiert die Zeichenfläche in das Fenster MyFenster
		mycont.add(myp);
		// Fensterüberschrift festlegen
		setTitle("Meine Zeichnung");
		// Koordinaten des linken, oberen Ecks des Fensters festlegen
		// Koordinate x = 30, Koordinate y = 60.
		setLocation(30,60);
		// Die Breite des Fensters in x-Richtung = 600
		// Die Breite des Fensters in y-Richtung = 400
		setSize(600,400);
		// Macht das Fenster sichtbar
		setVisible(true);
	}
}


class MyMenuListener implements ActionListener {
    public void actionPerformed(ActionEvent e){
        if (e.getActionCommand().equals("1")) {
            System.out.println("1.Eintrag");
        	BeschreibungFenster bf = new BeschreibungFenster();
            bf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

        }
        else if (e.getActionCommand().equals("2")) {
            System.out.println("2.Eintrag");
        }
    }
}




class BeschreibungFenster extends JFrame{
    private Container mycont;

	// Konstruktor
	public BeschreibungFenster(){
        //Container mycont;
        // Eine Zeichenfläche deklarieren
        JTextArea text=new JTextArea();
		mycont = getContentPane();

        //text.setText("Programmbeschreibung");
        text.setText("Programmbeschreibung:\n"+
"In die x-Position und die y-Position müssen positive ganze Zahlen" +
"geschrieben und jeweils mit ENTER bestätigt werden." +
"Werden keine Zahlen (sondern z.B. Buchstaben) angegeben oder negative" +
"oder zu große Zahlen (außerhalb des Fensters) angegeben, dann wählt das " +
"Programm selbst eine Position aus");


        mycont.add(text);

		// Fensterüberschrift festlegen
		setTitle("Meine Zeichnung");
		// Koordinaten des linken, oberen Ecks des Fensters festlegen
		// Koordinate x = 30, Koordinate y = 60.
		setLocation(30,60);
		// Die Breite des Fensters in x-Richtung = 600
		// Die Breite des Fensters in y-Richtung = 400
		setSize(600,400);
		// Macht das Fenster sichtbar
		setVisible(true);
	}
}
 
Zuletzt bearbeitet von einem Moderator:
G

Gast2

Gast
Java:
textarea.setLineWrap(true)

bf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOS E);
// das würde ich in den Konstruktor machen

wenn du lange Strings hast dann schau dir die Klasse StringBuilder an.
 
S

SlaterB

Gast
> Wie kann man lange Java-Anweisung, die nicht in eine Zeile passt auf mehrere Zeilen verteilen?

ausprobieren?
erlaubt ist z.B.
Code:
LangerTyp langeVariablenName =
  getObjektVonLangerMethode().
     nochNeMethode();
Formatter von höheren Entwicklungsumgebungen wie Eclipse bringen da oft komfortabel Ordnung rein
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E einfache Frage:warum ist Hintergrund grau ? AWT, Swing, JavaFX & SWT 24
E einfache Frage zu paintComponent und Graphics AWT, Swing, JavaFX & SWT 7
L Einfache Layout Frage für Applet -> Was mache ich bloss falsch? AWT, Swing, JavaFX & SWT 2
E Einfache Frage zu GridBagLayout AWT, Swing, JavaFX & SWT 30
E einfache Frage zu invokeLater() AWT, Swing, JavaFX & SWT 4
E Einfache Frage zu GridLayout AWT, Swing, JavaFX & SWT 35
M einfache Frage über SWT GUI-Programmierung AWT, Swing, JavaFX & SWT 3
S Einfache Thread-Frage AWT, Swing, JavaFX & SWT 3
G Einfache Frage Panel AWT, Swing, JavaFX & SWT 5
Jose05 einfache GUI mit schwarzem Feld AWT, Swing, JavaFX & SWT 12
X JavaFX Einfache FX Application, aber wie alte Features umgehen? AWT, Swing, JavaFX & SWT 10
B AWT einfache Stoppuhr -Verbesserungsvorschläge AWT, Swing, JavaFX & SWT 2
E Warum macht die einfache Animation einen kleinen Fehler? AWT, Swing, JavaFX & SWT 14
A Einfache Benutzeroberfläche wie realisieren? AWT, Swing, JavaFX & SWT 6
P Swing Einfache Eingabe in JTextfield wird nicht ausgegeben AWT, Swing, JavaFX & SWT 3
E EINFACHE Verständnisfrage zu repaint(), paintComponent(), usw. AWT, Swing, JavaFX & SWT 16
V Swing Einfache Graphen-Lib? AWT, Swing, JavaFX & SWT 2
A Swing einfache fragen zu frame AWT, Swing, JavaFX & SWT 10
iLoveTheInternet Einfache Grafikausgabe AWT, Swing, JavaFX & SWT 2
B Einfache jpg-Bilder anzeigen AWT, Swing, JavaFX & SWT 8
H einfache Buttonanzeige AWT, Swing, JavaFX & SWT 2
M Einfache Möglichkeit einen Login Dialog zu bauen? AWT, Swing, JavaFX & SWT 1
G Einfache Text formatierung? Wie? AWT, Swing, JavaFX & SWT 4
O Suche einfache Möglichkeit zum Speichern AWT, Swing, JavaFX & SWT 21
E Frage zum Schieberegler JSlider AWT, Swing, JavaFX & SWT 5
thor_norsk Java - Allgemeine - Frage AWT, Swing, JavaFX & SWT 14
thor_norsk Allgemeine Frage AWT, Swing, JavaFX & SWT 10
M Frage zu Java Bundesligaverwaltung AWT, Swing, JavaFX & SWT 7
thor_norsk Allgemeine Frage AWT, Swing, JavaFX & SWT 9
E Frage zum Textfeld AWT, Swing, JavaFX & SWT 8
H Swing JMenu aufgeklappt oder nicht - Wie frage ich das ab? AWT, Swing, JavaFX & SWT 5
pkm Frage wegen java.lang.IllegalStateException bei DocumentListener AWT, Swing, JavaFX & SWT 4
D Frage zu ActionListenern und AvtionEvents AWT, Swing, JavaFX & SWT 2
ralfb1105 JavaFX Daten zwischen Controllern austauschen- neue Frage AWT, Swing, JavaFX & SWT 7
F JavaFX Frage zum Logging AWT, Swing, JavaFX & SWT 6
E Prinzip: wie man Ereignisse in einer GUI verarbeit. Frage zum Design? AWT, Swing, JavaFX & SWT 10
ralfb1105 Swing Frage zu SwingWorker Verhalten bei cancel() AWT, Swing, JavaFX & SWT 2
J Frage zu setuserdata AWT, Swing, JavaFX & SWT 1
N Frage zu ListView AWT, Swing, JavaFX & SWT 11
L 2D-Grafik Frage zu Ellipse2D.Double, Abfrage, ob Punkt enthalten ist funktioniert nicht AWT, Swing, JavaFX & SWT 3
T Frage zu GUI - Button soll Objekt erfassen AWT, Swing, JavaFX & SWT 2
J Event Handling Frage zu der Funktion addActionListener AWT, Swing, JavaFX & SWT 2
J Frage zur objektorentierten Swing Programmierung AWT, Swing, JavaFX & SWT 10
T JavaFX Frage zum FX-Loader AWT, Swing, JavaFX & SWT 3
B drawRect Frage und Aufgabenstellung AWT, Swing, JavaFX & SWT 10
fLooojava GridLayout - Frage bezüglich Kachelgröße AWT, Swing, JavaFX & SWT 5
S Frage zu java.awt.EventQueue AWT, Swing, JavaFX & SWT 1
J Frage zu Java Projekt [2D Game] AWT, Swing, JavaFX & SWT 3
M Swing Grundlegende Frage zu SWING mit WindowBuilder AWT, Swing, JavaFX & SWT 11
M Frage zum Loggen von Fehlern AWT, Swing, JavaFX & SWT 3
T Swing API Frage zu Verzeichnisbäumen und JTree AWT, Swing, JavaFX & SWT 1
M Thread-Frage in SWT AWT, Swing, JavaFX & SWT 1
Q Cursor Frage AWT, Swing, JavaFX & SWT 8
W JavaFX TableView frage AWT, Swing, JavaFX & SWT 5
H Taschenrechnerprojekt in Javafx - Frage zu den Buttons in FXML AWT, Swing, JavaFX & SWT 1
I Grundsätzliche Frage zu ItemListener AWT, Swing, JavaFX & SWT 11
X Kurze Frage zu JPopup AWT, Swing, JavaFX & SWT 3
D Swing [Frage] ComboBox + Label AWT, Swing, JavaFX & SWT 3
D Frage zu JFrame und Graphics AWT, Swing, JavaFX & SWT 4
J Swing Frage zur Vorgehensweise (JTable?, JLabels?) AWT, Swing, JavaFX & SWT 8
S Frage zu Jtable / CellEditor AWT, Swing, JavaFX & SWT 1
kaoZ Frage zum einfügen von Componenten AWT, Swing, JavaFX & SWT 14
N Swing JTable anfänger frage AWT, Swing, JavaFX & SWT 2
S GridBagLayout-Frage AWT, Swing, JavaFX & SWT 1
V 2D-Grafik Frage zum Graphics Objekt AWT, Swing, JavaFX & SWT 2
F Swing JComboBox - Frage zur Größe AWT, Swing, JavaFX & SWT 11
G noch eine Frage zum EventDispachThread AWT, Swing, JavaFX & SWT 4
D MVC Frage AWT, Swing, JavaFX & SWT 6
Z Flackern trotz Offscreen Image / Doublebuffer, (+ Frage zu Pixelvergleich) AWT, Swing, JavaFX & SWT 25
GianaSisters 2D-Grafik BufferedImage.getSubimage - Frage AWT, Swing, JavaFX & SWT 7
M Frage zu KeyListener bzgl. JApplet AWT, Swing, JavaFX & SWT 3
M Frage zu Threads AWT, Swing, JavaFX & SWT 3
N Swing JComboBox Frage AWT, Swing, JavaFX & SWT 5
Luk10 g.drawString funktioniert nicht + Frage zur Text-Rendering Qualität AWT, Swing, JavaFX & SWT 7
Luk10 Frage zu Farb-Komposition AWT, Swing, JavaFX & SWT 9
K Gui Layout Frage AWT, Swing, JavaFX & SWT 5
V SWT Import Wizard - frage zur WizardPage AWT, Swing, JavaFX & SWT 5
N Swing Frage JXMapviewer AWT, Swing, JavaFX & SWT 4
GUI-Programmer Wieder ne Layout Frage AWT, Swing, JavaFX & SWT 11
GUI-Programmer LayoutManager Kurze Layout Frage - eine komponente mittig? AWT, Swing, JavaFX & SWT 5
lumo SWT Zeichnen bescheunigen bzw eine allg. Frage AWT, Swing, JavaFX & SWT 8
H Frage zu übergebenem Vector bzw. Boolean AWT, Swing, JavaFX & SWT 3
C 2D-Grafik BufferedImage laden, Frage zum Code AWT, Swing, JavaFX & SWT 2
VfL_Freak Swing Frage zu "new JPasswordField( 10 )" AWT, Swing, JavaFX & SWT 6
H Frage zu WindowBuilder Pro AWT, Swing, JavaFX & SWT 3
C Frage/Problem mit Jpanel AWT, Swing, JavaFX & SWT 4
S Frage zu TextArea AWT, Swing, JavaFX & SWT 2
GUI-Programmer Zeichnen in Swing - Frage AWT, Swing, JavaFX & SWT 6
Luk10 Frage zu Mouseevents AWT, Swing, JavaFX & SWT 7
J Refreshing Swing Frage AWT, Swing, JavaFX & SWT 10
F Frage zu Event KeyTyped bei jPanel AWT, Swing, JavaFX & SWT 4
A Frage zu StringBuilder AWT, Swing, JavaFX & SWT 2
S allg. Frage zur GUI-Architektur AWT, Swing, JavaFX & SWT 5
A Frage zu JDialog AWT, Swing, JavaFX & SWT 3
A Frage zur Methode matches() AWT, Swing, JavaFX & SWT 2
P LayoutManager Verständnis-Frage GridBagLayout AWT, Swing, JavaFX & SWT 7
H Allgemeine Frage zu Grafikfähigkeiten von Java AWT, Swing, JavaFX & SWT 24
D Repaint Frage, Design Frage AWT, Swing, JavaFX & SWT 2
Jats Frage zu JLabel & JTextField AWT, Swing, JavaFX & SWT 4
Y frage zu BufferedImage AWT, Swing, JavaFX & SWT 7

Ähnliche Java Themen

Neue Themen


Oben