0

HTML と CSS で、input type=text がある場合、padding-left:10px; を使用した場合。たとえば、テキストは左の境界線から 10 ピクセル離れて書き込まれますが、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 に答える