2016-11-29 62 views
0

我使用互联网作为资源来帮助我制作JButton,但出于某种原因,我无法将其设置为正常尺寸。我已经改变了很多尺寸和混乱,但它不起作用。如何将此JButton更改为不占用整个宽度?

这里是我的代码:

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

public class ScreenSaver { 
    public static void main(String[] args) { 

     JFrame frame = new JFrame(); 
     JButton button = new JButton(); 
     JPanel panel = new JPanel(); 

     button.setSize(100, 100); 
     panel.add(button); 


     frame = new JFrame ("Screen Saver"); 
     frame.setSize(Toolkit.getDefaultToolkit().getScreenSize()); 
     frame.setUndecorated(true); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.setContentPane(panel); 
     frame.setBackground(new Color(1.0f,1.0f,1.0f,0.1f)); 
     frame.setResizable(true); 
     frame.setVisible(true); 


    } 
} 
+0

如果使用'GridLayout',你的按钮只会填充网格的一个单元格。 – Berger

+0

@Berger我可以使用哪些其他布局? – Herseept72

+0

尝试不在构造函数中传递布局管理器,'JPanel'的默认布局管理器(FlowLayout)应该没问题。 – Berger

回答

0

尝试使用

frame.setLayout(null); 

那么你可以

button.setLocation(x,y); 

它会帮助你把Java组件在你想要的位置。 否则默认Java布局应用于您的框架,然后您不能完全自定义设计!

请记住,您需要自定义要添加到JFrame中的所有组件。 (setSize,setLocation也是JPanel。)

相关问题