java – JTextField边距不适用于边框
发布时间:2020-12-14 23:21:48 所属栏目:Java 来源:网络整理
导读:我有一个JTextField,我想要setMargin.但是当我设置任何边框时,它都不能正常工作.它的保证金功能不起作用. 这是我的代码; import java.awt.Color;import java.awt.Insets;import java.io.IOException;import javax.swing.BorderFactory;import javax.swing.JO
我有一个JTextField,我想要setMargin.但是当我设置任何边框时,它都不能正常工作.它的保证金功能不起作用.
这是我的代码; import java.awt.Color; import java.awt.Insets; import java.io.IOException; import javax.swing.BorderFactory; import javax.swing.JOptionPane; import javax.swing.JTextField; public class ImageField { public static void main(String[] args) throws IOException { JTextField textField = new JTextField(); textField.setBorder(BorderFactory.createLineBorder(Color.DARK_GRAY)); textField.setMargin(new Insets(0,20,0)); JOptionPane.showMessageDialog(null,textField,"",JOptionPane.PLAIN_MESSAGE); } } 如果我告诉这一行,它是有效的 //textField.setBorder(BorderFactory.createLineBorder(Color.DARK_GRAY)); 解决方法
保证金在Border方面存在一些问题,要解决此问题,您可以尝试使用
CompoundBorder将EmptyBorder设置为内边框,并将所需边框(在您的情况下为lineBorder)作为外边框.
这样的事情应该有效: Border line = BorderFactory.createLineBorder(Color.DARK_GRAY); Border empty = new EmptyBorder(0,0); CompoundBorder border = new CompoundBorder(line,empty); textField.setBorder(border); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |