간단한 문제가있는 것 같습니다. 왼쪽에 맞추려는 레이블이 있지만 크기를 조정하면 가운데로 표류하기 시작합니다. 이것은 내가 추가 할 계획 인 다른 구성 요소들의 정렬을 포기할 것입니다. 왼쪽에서 그들을 지키려면 어떻게해야합니까?Swing에서 구성 요소를 왼쪽 및 오른쪽으로 정렬하는 방법은 무엇입니까?
그것은 확실하지 내 문제는 여기에 짧고 쉬운 코드의 새로운 기능 :
가package com.protocase.notes.views;
import com.protocase.notes.model.Note;
import com.protocase.notes.model.User;
import java.awt.Component;
import java.util.Date;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.border.BevelBorder;
/**
* @author dah01
*/
public class NotesPanel extends JPanel{
public NotesPanel(Note note){
this.setLayout(new BoxLayout(this,BoxLayout.Y_AXIS));
JLabel creatorLabel = new JLabel("Note by "+note.getCreator()+ " @ "+note.getDateCreated());
creatorLabel.setAlignmentX(JLabel.LEFT_ALIGNMENT);
creatorLabel.setHorizontalAlignment(JLabel.LEFT);
JTextArea notesContentsArea = new JTextArea(note.getContents());
notesContentsArea.setEditable(false);
JScrollPane scrollPane = new JScrollPane(notesContentsArea);
JLabel editorLabel = new JLabel(" -- Last edited by "+note.getLastEdited() +" at "+note.getDateModified());
editorLabel.setAlignmentX(Component.LEFT_ALIGNMENT);
editorLabel.setHorizontalAlignment(JLabel.LEFT);
this.add(creatorLabel);
this.add(scrollPane);
this.add(editorLabel);
this.setBorder(new BevelBorder(BevelBorder.RAISED));
}
public static void main(String[] args) {
JFrame frame = new JFrame("Notes Panel");
Note note = new Note();
User user = new User();
user.setFirstName("d");
user.setLastName("h");
user.setUserID("dah01");
note.setCreator(user);
note.setLastEdited(user);
note.setDateCreated(new Date());
note.setDateModified(new Date());
note.setContents("A TEST CONTENTS");
NotesPanel np = new NotesPanel(note);
JScrollPane scroll = new JScrollPane(np);
frame.setContentPane(scroll);
np.setVisible(true);
frame.setVisible(true);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
하지만 (즉, 'setAlignmentX') 각 라벨의 왼쪽에 ... 당신은 어떻게 될 것이라고 생각 했습니까? – user1329572
편집 : 예제에서이 작업을 수행하고있었습니다. 코드에서 오른쪽으로 변경 한 것이 하나도 없습니다. – davidahines
스텁 사용자/노트 클래스 사용 : http://pastebin.com/Si0iCPnG – EthanB