2013-07-07 51 views
6

Tôi muốn căn chỉnh JLabel của mình sang trái.Làm cách nào để căn chỉnh JLabel ở bên trái của JPanel?

String lText = "<html><b><font color = white face = comic sans ms size = 20>mybook</font></b></html>"; 
    JLabel label = new JLabel(lText); 
    label.setBorder(new EmptyBorder(25,0,25,500)); 

Tôi đã cố gắng thực hiện việc này bằng cách sử dụng EmptyBorder nhưng không đúng cách. Tôi đang sử dụng FlowLayout

Trả lời

5

Bạn có thể muốn đặt thuộc tính HorizontalAlignment của JLabel. Một cách là thông qua hàm tạo của nó. Hãy thử:

JLabel label = new JLabel(lText, SwingConstants.LEFT); 

này cũng có thể được thực hiện thông qua phương thức setter mong đợi:

label.setHorizontalAlignment(SwingConstants.LEFT); 
+0

này sẽ chỉ sắp xếp các văn bản bên trong biên giới của nhãn, không phải là cách nhãn được liên kết trong bảng điều khiển. –

13

FlowLayout sử dụng CENTER sự liên kết theo mặc định. Hãy thử sử dụng LEFT alignment cho JLabelJPanel của bạn chứa

myJPanel.setLayout(new FlowLayout(FlowLayout.LEFT)); 
+0

Điều này căn chỉnh toàn bộ bảng ở bên trái. Tôi chỉ muốn căn chỉnh nhãn của mình ở bên trái. –

+0

@ArchitVerma: 'Đặt JLabel' trên một' JPanel' với như được đề xuất trong câu trả lời, và giữ 'mới' JPanel' thay cho vị trí hiện tại của 'JLabel' :-) của bạn sẽ không làm gì? –

+0

I.e. bạn sẽ cần sử dụng các vùng chứa lồng nhau bằng cách sử dụng 'FlowLayout' – Reimeus

Các vấn đề liên quan