Ausrichtung von text und icon anders in JLabel

ich versuche zu schaffen, ein JLabel mit text Links ausgerichtet und das Symbol Rechtsbündig, ich habe versucht, diesen code:

_ip = new JLabel(ip);
_ip.setFont(boldFont);
_ip.setBounds(5, 0, 100, 50);
_ip.setIcon(images.ipBan);
_ip.setBorder(BorderFactory.createLineBorder(Color.black, 1));
_ip.setHorizontalTextPosition(SwingConstants.LEFT);
add(_ip);

Und das ist, was ich bekomme:

Ausrichtung von text und icon anders in JLabel

Das rote Bild zeigt die tatsächliche Ausrichtung von Bildern, die das grauen zeigt und wo ich will, dass mein Bild.

Wenn ich

_ip.setAlignmentX(JLabel.RIGHT_ALIGNMENT);

Passiert nichts, und wenn ich hinzufügen

_ip.setHorizontalAlignment(JLabel.RIGHT);

Symbol ausgerichtet ist, sondern auch text ist Rechtsbündig ausgerichtet, und ich will, dass es Linksbündig

Gibt es einen Weg, es zu tun?

Nicht durch ein paar Räume löst das problem?Ich meine jLabel.setText("99.222.22.230 (FEW SPACES) ")
Nein, das wird geholt-von-db-IPs-Liste, wenn ich wählen, um einige Räume, es heißt, ich sollte wissen, dass sich jede IP, die ich bin laden, aber in der Tat ich weiß nicht, wie Sie geladen werden, von einem db, ich kann also nicht einfach Leerzeichen einfügen
Ich weiß, es ist eine hässliche Weise, aber deine ip-string+ " (SPACE)" wird die Arbeit machen.
Es muss ein Weg (schwierig oder nicht) zu tun, die Leerzeichen sind nur ein workaround, dass ich nicht wollen, zu verwenden, vor allem, weil die schriftart die ich verwende ist nicht monospaced, also wenn ich einige Etiketten in eine JList, jedes Symbol wird ausgerichtet sein auf andere

InformationsquelleAutor BackSlash | 2013-03-31

Schreibe einen Kommentar