Hallo zusammen,
für ein Programm, an welchem ich arbeite, muss ich mir durch ein Label die vorher und nachher Werte eines Objektes ausgeben lassen. Dazu sollen für alle Attribute der Attributname, der alte und der neue Wert jeweils untereinander aufgelistet werden. Ich versuche dies durch diesen String zu realisieren, den ich so formattiere:
Damit wie es in der Konsole aussieht bin ich zufrieden, das entspricht dem wie es eigentlich sein sollte:
Wenn ich es dann allerdings durch Label.setText() Label schreiben will sieht es nicht mehr annähernd so schön aus.
Ich erkenne sogar worin das Problem liegt, selbst wenn ich leider keine Lösung dafür finde. Falls ein Wert kürzer als 30 zeichen ist wird eine "Spalte" durch meinen Code mit Leerzeichen aufgefüllt. In der Konsole scheinen Leerzeichen und übrige Zeichen dieselbe Breite zu haben, wodurch es so ordentlich aussieht. Im Label hingegen scheinen Leerzeichen schmäler zu sein als die Buchstaben, wodurch es zu dieser Verschiebung kommt.
Hat jemand eine Lösung für mich? Kann man das Label formattieren, so dass Leerzeichen dieselbe Breite haben wie Buchstaben? Oder kennt jemand eine alternative Lösung?
Ich bedanke mich bereits im Vorraus.
Liebe Grüße, Andy
für ein Programm, an welchem ich arbeite, muss ich mir durch ein Label die vorher und nachher Werte eines Objektes ausgeben lassen. Dazu sollen für alle Attribute der Attributname, der alte und der neue Wert jeweils untereinander aufgelistet werden. Ich versuche dies durch diesen String zu realisieren, den ich so formattiere:
Java:
aenderungen = aenderungen + String.format("%-30s %-30s %-30s\n","Attribut","Wert Alt","Wert Neu");
Damit wie es in der Konsole aussieht bin ich zufrieden, das entspricht dem wie es eigentlich sein sollte:
Wenn ich es dann allerdings durch Label.setText() Label schreiben will sieht es nicht mehr annähernd so schön aus.
Ich erkenne sogar worin das Problem liegt, selbst wenn ich leider keine Lösung dafür finde. Falls ein Wert kürzer als 30 zeichen ist wird eine "Spalte" durch meinen Code mit Leerzeichen aufgefüllt. In der Konsole scheinen Leerzeichen und übrige Zeichen dieselbe Breite zu haben, wodurch es so ordentlich aussieht. Im Label hingegen scheinen Leerzeichen schmäler zu sein als die Buchstaben, wodurch es zu dieser Verschiebung kommt.
Hat jemand eine Lösung für mich? Kann man das Label formattieren, so dass Leerzeichen dieselbe Breite haben wie Buchstaben? Oder kennt jemand eine alternative Lösung?
Ich bedanke mich bereits im Vorraus.
Liebe Grüße, Andy