ich habe eine Frage zum Character. Ist es möglich einen eigenen Character in Java zu erstellen ??? Mein Problem ist, dass ich in vielen verschiedenen Komponenten Labeln, Panels, TextFields etc. einen String und ein Status-Lämpchen anzeigen möchte. Nun möchte ich nicht jede einzelne Komponente, welche eig. kein Image anzeigen kann erweitern sondern hatte die Idee dieses Lämpchen quasi in meinen String zu packen. Da ein String ja aber aus einer Kette von Chars besteht, hatte ich die Idee evt. einen eigenen Character zu benutzen… geht soetwas überhaupt?
wie willst du denn etwas “neu erschaffen” was bereits “fest definiert” ist ?
nehmen wir mal den normalen UTF raum so haben wir einen 16 Bit wertebereich von 0x0000 bis 0xFFFF , das sind 256 x 256 = 65536 mögliche werte
die unicode-tabelle weist jedem dieser 65536 möglichen werte ein ganz bestimmtes zeichen zu > das nennt man zeichensatz
nun weis der computer schon mal mit hilfe des zeichensatzes als welches zeichen er eine bestimmte 16 bit kombination interpretieren soll , aber noch nicht wie er dies darstellen muss
dafür gibt es dann die schriftart welche genau beschreibt wie ein bestimmtes zeichen in einer bestimmten größe zu zeichnen ist
normalerweise sind dies meta-informationen und brauchen zusätzlich noch mindestens eine schriftfarbe um dann auch wirklich dargestellt werden zu können
fassen wir zusammen : um aus einem char , also einem beliebigen wert zeischen 0 und 65535 (16 Bit) , ein zeichen darzustellen braucht es mindestens folgende 4 informationen
zeichensatz
schriftart
schriftgröße
schriftfarbe
willst du also “einen neuen character erschaffen” so musst du diesen mit den genannten angaben neu definieren
um aber mal auf deinen ausgangspost zu kommen
“Nun möchte ich nicht jede einzelne Komponente, welche eig. kein Image anzeigen kann erweitern”
ähm WHAT ? lass mich raten : du arbeitest mit AWT ? dann schau dir mal Swing an , besonders JLabel , denn das kann von haus aus ein Image darstellen , da musst du noch nicht mal irgendwas erweitern oder selbst zeichnen