Biesterfeld: Verständnisprobleme

Beitrag lesen

Hej,

In der letzten Zeile dieser Tabelle steht folgendes:

Eye || Augenzwinkern [Frauen zwinkern doppelt so häufig wie Männer. ] || EyelidEvent

Nur nochmal zu meiner Sicherheit: Das ist ironisch gemeint, oder? ;-)

Ob es ironisch zu verstehen war bezweifel ich, aber AFAIK kennt Swing keine Klassen Eye oder EyelidEvent. Somit war es wahrscheinlich eine didaktisch-spaßige Erläuterung zu einem recht anschaulichem Aspekt von Java, wie Christian Ullenboom sie immer wieder fallen lässt.

  1. Wie ist es möglich, dass man in Java z.B. den Text von JLabel per HTML formatieren kann?

Dadurch dass es implementiert wurde ;)

Ich meine, wieso macht man soetwas?

Weil html zusammen mit css eine recht einfache und dazu etablierte Möglichkeit darstellt um Text formatiert darzustellen. Wenn du den Text formatieren möchtest, ist es eben einfacher ihn selber auszuzeichnen als für jede Formatierung am besten noch eine Klasse zu instanzieren und mit Methoden drauf zuzugreifen. So wird also eine recht effiziente Trennung von Programmlogik und Darstellungslogik ereicht.

Also hat Java einen eigenen kleinen Browser?

Das würde ich nicht als solchen bezeichnen, aber zuimdest verfügt Swing über eine kleine Rendering-Engine.

Das Problem ist, dass der erste Button ersetzt wird, und nur der zweite Button dargestellt wird. Warum macht Java das?

Weil du deinem Frame keinen Layout-Manager hinzugefügt hast. Daher kann es nicht mehreren Komponenten umgehen und ersetzt die letze bei jedem add() wieder.

Jetzt wollte ich diesen Text umändern und zwar in "Button". Aber diese Änderung ignoriert Java vollkommen.

Dein Code zeigt nicht wie du das tust. Grundsätzlich gilt, dass du Änderungen an Komponenten wenn sie bereits sichtbar sind, erst dadurch sichtbar machst, dass du die Komponente mit repaint() auch neu zeichnest.

Beste Grüße
Biesterfeld

--
Art.1: Et es wie et es
Art.2: Et kütt wie et kütt
Art.3: Et hätt noch immer jot jejange
Das Kölsche Grundgesetz