Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JLabel未对中 我一直在研究java程序,我试图让JLabor集中在窗口中间,但是我做的任何事情都只是在顶部中心。我希望有人能帮助找到一种方法,以文字为中心的窗口。这是我的密码: import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.SwingConstants; import javax.swing.SwingUtilities; public class Lottery extends JPanel implements ActionListener { private static final long serialVersionUID = 5815877011755522230L; private JLabel label; public static void main(String[] args) { make(); } public Lottery() { label = new JLabel("Hello There"); label.setHorizontalAlignment(JLabel.CENTER); label.setVerticalAlignment(JLabel.CENTER); add(label); } public static void make(){ JFrame frame = new JFrame("Lottery"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Lottery hi = new Lottery(); frame.setContentPane(hi); frame.setSize(600, 600); frame.setVisible(true); } }_Java_Swing_Jlabel - Fatal编程技术网

JLabel未对中 我一直在研究java程序,我试图让JLabor集中在窗口中间,但是我做的任何事情都只是在顶部中心。我希望有人能帮助找到一种方法,以文字为中心的窗口。这是我的密码: import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.SwingConstants; import javax.swing.SwingUtilities; public class Lottery extends JPanel implements ActionListener { private static final long serialVersionUID = 5815877011755522230L; private JLabel label; public static void main(String[] args) { make(); } public Lottery() { label = new JLabel("Hello There"); label.setHorizontalAlignment(JLabel.CENTER); label.setVerticalAlignment(JLabel.CENTER); add(label); } public static void make(){ JFrame frame = new JFrame("Lottery"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Lottery hi = new Lottery(); frame.setContentPane(hi); frame.setSize(600, 600); frame.setVisible(true); } }

JLabel未对中 我一直在研究java程序,我试图让JLabor集中在窗口中间,但是我做的任何事情都只是在顶部中心。我希望有人能帮助找到一种方法,以文字为中心的窗口。这是我的密码: import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.SwingConstants; import javax.swing.SwingUtilities; public class Lottery extends JPanel implements ActionListener { private static final long serialVersionUID = 5815877011755522230L; private JLabel label; public static void main(String[] args) { make(); } public Lottery() { label = new JLabel("Hello There"); label.setHorizontalAlignment(JLabel.CENTER); label.setVerticalAlignment(JLabel.CENTER); add(label); } public static void make(){ JFrame frame = new JFrame("Lottery"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Lottery hi = new Lottery(); frame.setContentPane(hi); frame.setSize(600, 600); frame.setVisible(true); } },java,swing,jlabel,Java,Swing,Jlabel,有人能帮我解决这个问题吗。替换添加(标签);与: 不要忘记导入java.awt.BorderLayout 代码在标签内对齐文本,但标签本身未在面板中居中。无论如何,你都得修改一下布局 import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; imp

有人能帮我解决这个问题吗。

替换添加(标签);与:

不要忘记导入java.awt.BorderLayout

代码在标签内对齐文本,但标签本身未在面板中居中。无论如何,你都得修改一下布局

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.SwingUtilities;

import java.awt.BorderLayout;

public class Lottery extends JPanel {


    private static final long serialVersionUID = 5815877011755522230L;

    private JLabel label;

    public static void main(String[] args) {
        make();

    }

    public Lottery() {

        label = new JLabel("Hello There");
        label.setHorizontalAlignment(JLabel.CENTER);
        label.setVerticalAlignment(JLabel.CENTER);
        //add(label);
        setLayout(new BorderLayout());
        add(label, BorderLayout.CENTER);

    }

    public static void make(){
        JFrame frame = new JFrame("Lottery");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Lottery hi = new Lottery();
        frame.setContentPane(hi);

        frame.setSize(600, 600);
        frame.setVisible(true);

    }


}
屏幕截图:

替换添加(标签);与:

不要忘记导入java.awt.BorderLayout

代码在标签内对齐文本,但标签本身未在面板中居中。无论如何,你都得修改一下布局

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.SwingUtilities;

import java.awt.BorderLayout;

public class Lottery extends JPanel {


    private static final long serialVersionUID = 5815877011755522230L;

    private JLabel label;

    public static void main(String[] args) {
        make();

    }

    public Lottery() {

        label = new JLabel("Hello There");
        label.setHorizontalAlignment(JLabel.CENTER);
        label.setVerticalAlignment(JLabel.CENTER);
        //add(label);
        setLayout(new BorderLayout());
        add(label, BorderLayout.CENTER);

    }

    public static void make(){
        JFrame frame = new JFrame("Lottery");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Lottery hi = new Lottery();
        frame.setContentPane(hi);

        frame.setSize(600, 600);
        frame.setVisible(true);

    }


}

屏幕截图:

您可以更改标签的垂直/水平对齐方式,或者尝试使用GridBagLayout而不是BorderLayout您可以更改标签的垂直/水平对齐方式,或者尝试使用GridBagLayout而不是BorderLayoutHanks,但文本仍然没有完全居中,那么,你能告诉我如何使用尺寸之类的东西来微调对齐方式吗?在发布之前,我已经测试过了,它看起来非常居中(在前面的回答中添加了一个屏幕截图),但我没有用尺子验证它,也没有计算像素,所以我相信它可能不完美:)然而,我的建议是使用MigLayout。这个工具非常复杂,但功能强大且灵活。你必须学会如何使用它,但结果是值得努力的。它是根据BSD许可证授权的,这允许你甚至在商业专有项目中使用它。谢谢,但是文本仍然没有完全居中,所以你能告诉我如何使用像尺寸这样的东西来微调对齐方式吗?我在发布之前已经测试过了,它看起来对我来说非常居中(在前面的回答中添加了一个屏幕截图),但我没有用尺子验证它,也没有计算像素数,所以我认为它可能并不完美:)不过,我的建议是使用MigLayout。这个工具非常复杂,但功能强大且灵活。你必须学会如何使用它,但结果是值得努力的。它是根据BSD许可证授权的,这允许您甚至在商业专有项目中使用它。