加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读