Portal > Foren > Java > Allgemeine Java-Programmierung > Frame zeigt keine Menüleiste an
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 22.08.2005, 21:15 Nach oben    #1
WurstBrot
Gast
 
Beiträge: n/a
Standard Frame zeigt keine Menüleiste an

hi,
ich hab ein Programm geschrieben, das ein Fenster (Frame) erstellt, aber aus irgendwelchen Gründen wird bei mir die Menüleiste nicht angezeigt:


Code:
import java.lang.*;
import java.awt.*;
import java.awt.event.*;

public class window extends Frame 
 {
     static int x1, y1, cnt = 0;
     
     public static void main(String[] args) 
      {
          window wnd = new window();
      }
      
     public window()
      {
          super("Fenster");
          
          addWindowListener(new MyWindowListener());
          addMouseListener(new MyMouseListener());
          
          this.setSize(600, 600);
          this.setMenuBar(new MyMenuBar());
          this.setVisible(true);
      }
      
 

    // Fensterleiste
    
    class MyMenuBar extends MenuBar
     {
         public void MyMenuBar()
          {
              Menu m = new Menu("Datei");
            MenuItem mi = new MenuItem("Beenden");
            mi.addActionListener(new MyActionListener());
            m.add(mi);
            
            this.add(m);
          }
     }
    
    
    
    // Event - Listeners
    
     public class MyWindowListener extends WindowAdapter
      {
          public void windowClosing(WindowEvent e)
           {
               setVisible(false);
             dispose();
             System.exit(0);
           }
      }
      
     public class MyMouseListener extends MouseAdapter
      {
          public void mousePressed(MouseEvent e)
           {
               Graphics g = getGraphics();
               
               if (window.cnt == 0)
                {
                    window.x1 = e.getX();
                  window.y1 = e.getY();
                  System.out.println("von: " + window.x1 + " , " + window.y1);
                  window.cnt = 1;
                }
                  else
                   {
                       g.drawLine(e.getX(), e.getY(), window.x1, window.y1);
                       window.x1 = e.getX();
                       window.y1 = e.getY();
                       System.out.println("zu: " + window.x1 + " , " + window.y1);
                   }
           }
      }
      
     public class MyActionListener implements ActionListener
      {
          public void actionPerformed (ActionEvent e)
           {
               setVisible(false);
               dispose();
               System.exit(0);
           }
      }
 }
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.08.2005, 23:31 Nach oben    #2
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 432
Standard

Hi,

zum einen: warum erzeugt Du immer eigene Klassen, wenn Du auch die vorhandenen nutzen kannst? Zweitens: wenn Du von einer Klasse erbst und deren Konstruktor überschreibst, ist ein <i>void</i> dabei zuviel, ausserdem ist es meist nötig, den Konstruktor der Basisklasse aufzurufen. Schreib mal ein <i>super();</i> in Deine Bar.

Ich hoffe, das passt dann.
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.08.2005, 15:14 Nach oben    #3
WurstBrot
Gast
 
Beiträge: n/a
Standard

stimmt, das mit der abgeleiteten MyMenuBar - Klasse ist zu viel, das hätte man auch im Konstruktor der Hauptklasse unterbringen können, aber die anderen Klassen sind meiner Meinung nach schon wichtig, da sonst das Programm etwas unübersichtlich wird ... jedenfalls hab ich jetzt das void aus meinen Konstruktor gestrichen und die super - Methode eingefügt und jetzt klappts einwandfrei
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JInternal Frame Fehler asenodin Desktop-Applikationen und Grafik 11 26.12.2006 23:56
Externe Klassen Panel's in einen Frame anzeigen asenodin Desktop-Applikationen und Grafik 3 04.12.2006 01:30
Frame löscht Canvas-Inhalt tbrnds Desktop-Applikationen und Grafik 3 17.11.2005 20:28
Frame ohne Titelleiste mr.no Desktop-Applikationen und Grafik 4 06.07.2005 12:45
Frame hört auf Applet mit ActionListener Nicole66 Allgemeine Java-Programmierung 1 24.11.2004 22:12


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:57 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45