mardi 26 mai 2015

Doppelte MenuBar -> Nach Minimieren verschwunden

Hallo
ich hoffe mir kann hier jemand etwas weiter helfen.
Wir haben gerade mit OOP begonnen und ich verzweifle gerade an einer Aufgabe. Wir sollen ein JFrame erstellen das Bilder aus einem Ordner anzeigt, mit Button soll man zwischen den Bildern wechseln können.
Ich bin jetzt soweit das ich ein Bild im gezeichnet habe. jedoch wird beim starten ein zweites JMenu angezeigt. Nachdem minimieren und maximieren des Fensters verschwindet es wieder und das Frame sieht so aus, wie es auszusehen hat.

In den Anhängen sind die Bilder. Bild1 ist wie es direkt nach dem starten aussieht und Bild2 wie es aussieht nach dem min und max des Fesnters, also so wie es aussehen soll.

hier noch zum Schluss mein Quellcode
Java Code:

  1. import java.awt.BorderLayout;import java.awt.Color;
  2. import java.awt.Font;
  3. import java.awt.Graphics;
  4.  
  5.  
  6. import javax.swing.BorderFactory;
  7. import javax.swing.JButton;
  8. import javax.swing.JFrame;
  9. import javax.swing.JMenu;
  10. import javax.swing.JMenuBar;
  11. import javax.swing.JMenuItem;
  12. import javax.swing.JPanel;
  13.  
  14.  
  15.  
  16.  
  17. public class MyFrame
  18. {
  19. public JFrame myFrame;
  20. MyFrame(){
  21. // Fenster
  22. myFrame = new JFrame();
  23. myFrame.setTitle("Bilder");
  24. myFrame.setSize(1000, 1000);
  25. myFrame.setLocationRelativeTo(null);
  26. myFrame.add(new paint());
  27.  
  28.  
  29. // Menu Leiste
  30. JMenu menu = new JMenu("Optionen");
  31. JMenuBar menuBar = new JMenuBar();
  32. String[] menuItemString = {"Farbe wählen","Rand wählen","Bilder einfügen","Beenden"};
  33. for(int i=0;i<menuItemString.length;i++)
  34. {
  35. JMenuItem menuItem = new JMenuItem(menuItemString[i]);
  36. menu.add(menuItem);
  37. // menuItem.addActionListener();
  38. }
  39.  
  40.  
  41. // //HauptPanel
  42. // JPanel mainPanel = new JPanel();
  43. // mainPanel.setBorder(BorderFactory.createEmptyBorder(10, 20, 50, 20));//oben, links,unten,rechts
  44. // myFrame.add(mainPanel,BorderLayout.CENTER);
  45.  
  46.  
  47. //Unteres Panel mit 4 Button
  48. JPanel bottomPanel = new JPanel();
  49. String[] buttonText = {"Links","Rechts","Zoom In","Zoom Out","Zoom Reset"};
  50. bottomPanel.setBorder(BorderFactory.createEmptyBorder(10, 20, 50, 20));//oben, links,unten,rechts
  51. myFrame.add(bottomPanel,BorderLayout.SOUTH);
  52. bottomPanel.setBackground(Color.RED);
  53.  
  54. for(int j=0;j<buttonText.length;j++){
  55. JButton button = new JButton(buttonText[j]);
  56.  
  57. // button.addActionListener();
  58. bottomPanel.add(button);
  59. }
  60.  
  61.  
  62. menuBar.add(menu);
  63.  
  64. myFrame.setJMenuBar(menuBar);
  65.  
  66. myFrame.setVisible(true);
  67. }
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78. }


und die paint class
Java Code:

  1. import java.awt.Color;import java.awt.Font;
  2. import java.awt.Graphics;
  3. import java.awt.Image;
  4. import java.awt.Toolkit;
  5. import java.awt.image.ImageObserver;
  6.  
  7.  
  8. import javax.swing.JPanel;
  9.  
  10.  
  11.  
  12.  
  13. public class paint extends JPanel{
  14. public void paint(Graphics g) {
  15. int breite = getWidth()-100;
  16. int hoehe = getHeight()-100;
  17. int abstandX = 50;
  18. Image froeh = Toolkit.getDefaultToolkit().getImage("/Users/RedDevil/workspace/Aufgabe 5/src/Bilder/Chrysanthemum.jpg");
  19. g.drawImage(froeh, abstandX, abstandX, breite, hoehe,this);
  20.  
  21. }
  22. }
Miniaturansichten angehängter Grafiken
Klicken Sie auf die Grafik für eine größere Ansicht  Name: bild1.jpg  Hits: -  Größe: 126,0 KB  ID: 7801   Klicken Sie auf die Grafik für eine größere Ansicht  Name: bild2.jpg  Hits: -  Größe: 109,9 KB  ID: 7802  


Doppelte MenuBar -> Nach Minimieren verschwunden

0 commentaires:

Enregistrer un commentaire