0

在 HTML 和 CSS 中,如果输入 type=text,如果我们使用 padding-left:10px; 例如,文本将被写入距左边框 10px 的位置,我该如何在 java 中做到这一点?

4

2 回答 2

0

在 Swing 中,您可以创建一个空边框。这是将此类填充添加到文本字段的代码示例:

import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import javax.swing.border.Border;

public class Main {
    private JFrame frame;
    private JTextField t;

    protected void initUI() {
        frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        t = new JTextField();
        Border padding = BorderFactory.createEmptyBorder(0, 10, 0, 0);
        if (t.getBorder() != null) {
            t.setBorder(BorderFactory.createCompoundBorder(t.getBorder(), padding));
        } else {
            t.setBorder(padding);
        }
        frame.add(t);
        frame.pack();
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {

            @Override
            public void run() {
                new Main().initUI();
            }
        });
    }

}
于 2012-05-22T15:13:11.463 回答
0

对于控制台输出,您可以System.out.printf像这样获得左填充:

System.out.printf("%10s%s%n", "", someStr);
于 2012-05-22T15:10:41.173 回答