2016-10-06 39 views
0

我目前正在开发一个项目,并且试图将我的标签设置在特定位置,这就是我的代码目前的样子;在Java中为标签设置特定的位置

import javax.swing.*; 
import java.awt.*; 

public class First extends JFrame 
{ 
    private JLabel label; 
    private JTextField textfield; 

     JLabel ZKey; 
    public First() 
    { 
     ZKey=new JLabel("ZKey"); 
     ZKey.setLayout(null); 
     ZKey.setLocation(55, 55); 
     add(ZKey); 
    } 

public static void main (String args[]) 
{ 
    First gui = new First(); 
    gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    gui.setSize(500,500); 
    gui.setVisible(true); 
    gui.setTitle("Keep Track Of What You Press"); 
} 
} 

我觉得我错过了一些相当愚蠢的东西。

+1

究竟是什么错误? –

+0

对不起,它基本上把标签放在最左边的中间,我似乎无法让它在其他地方。 –

+0

尝试使用gui上的pack(),添加JLabel之后并将gui设置为可见之前。 无论如何,在大多数情况下,你并不是真的想要一个空布局,但某种布局管理器 – Valjean

回答

0

使用JPanel,将JLabel添加到面板,将面板添加到JFrame。标签现在出现在顶部和中间:

import javax.swing.*; 
import java.awt.*; 

public class First extends JFrame 
{ 
    private JLabel label; 
    private JTextField textfield; 

     JLabel ZKey; 
     JPanel panel; 
    public First() 
    { 
     panel=new JPanel(); 
     ZKey=new JLabel("ZKey"); 
     ZKey.setLayout(null); 
     ZKey.setLocation(55, 55); 
     panel.add(ZKey); 
     add(panel); 
    } 

public static void main (String args[]) 
{ 
    First gui = new First(); 
    //gui.setLayout(null); 
    gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    gui.setSize(500,500); 
    gui.setVisible(true); 
    gui.setTitle("Keep Track Of What You Press"); 
} 
}