Java 如何在jlabel中的两个动态文本之间保持恒定间隙?(参见图)
Java 如何在jlabel中的两个动态文本之间保持恒定间隙?(参见图),java,swing,user-interface,jlabel,Java,Swing,User Interface,Jlabel,路径部分可能更长或更短,但必须锁定在静态位置我不能完全确定是否完全理解该要求。正如我所理解的,下面的内容应该可以做到这一点 public static void main( String[] args ) { EventQueue.invokeLater( new Runnable() { @Override public void run() { JFrame testFrame = new JFrame( "TestFrame" );
路径部分可能更长或更短,但必须锁定在静态位置我不能完全确定是否完全理解该要求。正如我所理解的,下面的内容应该可以做到这一点
public static void main( String[] args ) {
EventQueue.invokeLater( new Runnable() {
@Override
public void run() {
JFrame testFrame = new JFrame( "TestFrame" );
JPanel contents = new JPanel( new BorderLayout( ) );
contents.add( new JLabel( "Locked" ), BorderLayout.EAST );
JPanel textPanel = new JPanel( new FlowLayout( FlowLayout.LEFT ) );
textPanel.add( new JLabel( "C:\\Users\\Pictures\\Sample pictures\\Chrysanthemum.jpg ") );
contents.add( textPanel, BorderLayout.CENTER );
testFrame.setContentPane( contents );
testFrame.pack();
testFrame.setDefaultCloseOperation( WindowConstants.DISPOSE_ON_CLOSE );
testFrame.setVisible( true );
}
} );
}
由于调用了testFrame.pack(),两个标签粘在一起。但是,如果手动调整大小,您将看到
锁定的标签保留在右侧,而URI获得所有可用空间。调整大小时会发生什么?如果您只希望文本占用所有可用的额外空间,而锁定的文本继续使用相同的空间,则可以使用边框布局
<文本的代码>居中
(可能包装在一个带有FlowLayout#LEFT
)的额外面板中),标签的东
不可调整大小时,上述解决方案应:work@Robin你能不能给我一些代码,从JList中可以使用NavigationFilter.Bias或者通过Htmlis,使用labelUI来实现这一点?