techpriest

Buttons tauchen erst bei Cursorberührung auf

Hallo zusammen,

nachdem ich mein erstes Dialogfenster erfolgreich geschaffen hatte, dachte ich mir ich hübsche es etwas mit einer Grafik auf. Vorher gabs nur zwei Buttons mit einem Run und ein wenig Text. Alles ohne Probleme.

Leider tauchte nach Einbinden der Grafik das Problem auf, dass die zwei Buttons des Fensters nur dann auftauchen, wenn ich mit dem Mauscursor über deren Position fahre. Die Funktion bleibt ohne weiteres erhalten und danach bleiben sie sichtbar.

Hier mal mein Code für den Grafikaufruf:

public void paint(Graphics g)
Bild laden
{
Image img;
img = getToolkit().getImage("c:\\backup\\hrf.gif");
MediaTracker mt = new MediaTracker(this);
mt.addImage(img, 0);
try
{
Warten, bis das Image vollständig geladen ist,
mt.waitForAll();
}

catch (InterruptedException e)
{
}
repaint();
if (img != null)
{
g.drawImage(img,4,30,this);
}
}

Hat von euch jemand eine Idee woran das liegen könnte?
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 47749

Url: https://administrator.de/forum/buttons-tauchen-erst-bei-cursorberuehrung-auf-47749.html

Ausgedruckt am: 16.07.2025 um 02:07 Uhr

24855
24855 19.01.2007 um 15:59:38 Uhr
du hast ja eider nicht den ganze Code gepostet, da die Bilder erst zu Laufzeit einliest, schreibe mal an das Ende deiner "MAIN" Klasse den folgenden Befehl.
Dazu musst du wissen, wie dein Frame heisst

<FRAMENAME>.pack();

für Framename setz du den Namen des Frames ein, welcher die GUI trägt.

Ist nur eine Vermutung, da der Cursor theoretisch ein Eventauslösen würde, wenn du eines implemtiert hast, könnte ja sein, dass auch bei mangelnder Implementierung ein GUI refresh, wie bei maximieren und minimieren des Fensters stattfindet.

Möglich wären auch noch Probleme mit möglichen Layoutmanagern. >> Überlagerung usw. Färb dann die einzelene Panel anderfarbig ein, dann siehst du ob alles ist wie es sein sollte.

Panelname.setColor... google hilft!

dadurch wird sozusagen dein GUI Aufbau refresht. wenn es nix hilft poste alles Bitte, sonst kann ich Dir schlecht helfen.

Greetz

Janosch