Ich versuche, ein Menü für mein Programm zu erstellen, die einige geometrische Objekte auf einem JPanel zieht mit .getGraphics(). DrawImage (..)JMenu verlässt ein graues Feld über einem JPanel, auf dem Bild gezeichnet wird
Das Problem, das ich habe, ist, dass, nachdem ich ein Element in diesem Menü ausgewählt habe, der Text verschwindet, aber die Hintergrundfarbe nicht. Die Auswahl stellt eine Methode zur Verfügung, die das Bild auf diesem Panel mit dem obigen Befehl neu zeichnet, aber offensichtlich nicht hilft, es zu entfernen.
Nachdem ich auf diesen Menüeintrag geklickt habe und dieses graue Feld hinter dem Menü steht, kann ich es verschwinden lassen, indem ich die Szene mit der Maus verschiebe. Das verwirrt mich, warum der Menüelementmethodenaufruf die Box nicht entfernt, aber der nächste Aufruf dieser Methode tut.
Irgendeine Idee warum das passiert und/oder wie man es repariert?
Vielen Dank.
Bild (A, B sind auf JMenus JMenuBar und das graue Feld unten nach JRadioButtonMenuItem Auswahl überlassen.):
Meine Vermutung ist, dass Sie das Panel daran gehindert haben, neu zu zeichnen, wenn es erkennt, dass das Menü verschwunden ist. Aber ich kann es nicht sagen, ohne Code zu sehen. –
Das einzige, was ich manuell im Panel eingestellt habe, ist setPreferredSize(). (Außerdem sind alle Komponenten in einem JFrame, wenn das einen Unterschied macht) – EyfI