【发布时间】:2014-09-29 13:31:23
【问题描述】:
我想在 java 中实现聊天应用程序,我希望它显示像 Viber 这样的消息: 用户以右对齐方式发送的消息 他的朋友左对齐的消息 我也想要他们不同的风格。
聊天信息可以包含:文字、图片等。
我使用JPannel chatP 与chatP.setLayout(new BoxLayout(chatPl, BoxLayout.PAGE_AXIS) 聊天窗口
对于短信,我使用 JTextpane,我使用 setAlignmentX("alignment"); 进行设置对齐! :
`JTextPane jtp = new JTextPane(){
private static final long serialVersionUID = 1L;
@Override
public Dimension getMinimumSize(){
return new Dimension(message.length()*5, getContentHeight(message.length()*5,message)+10);
}
@Override
public Dimension getMaximumSize(){
return new Dimension(message.length()*5, getContentHeight(message.length()*5,message)+10);
}
}; jtp.setAlignmentX(Component.LEFT_ALIGNMENT);`
对于其他类型的消息,我创建了一个包含它的 JPanel。
并将这些组件添加到JPannel chatP
我的问题是设置 JTextpane 的大小以修复其消息。还有对齐!
【问题讨论】:
标签: java swing layout alignment jtextpane