0

所以,我试图显示一个简单的 JFrame 但我无法更改背景颜色?做了一些搜索,他们都建议使用我拥有的 useContentPane。

 import java.awt.*;

import javax.swing.*; 


public class Login {

     public static void main(String[] args) {

         createWindow();

         } 

    private static void createWindow() {
        JFrame frame = new JFrame("Login System");
        frame.getContentPane().setBackground(Color.darkGray);
        frame.setSize(350, 350);    
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JTextField username = new JTextField();
        frame.add(username);
        frame.setVisible(true);
    }


}

JFrame 大小有效,但背景无效,TextField 无效,对此非常新。有任何想法吗?感谢所有帮助。

4

2 回答 2

4

代码工作正常。问题是您的文本字段占据了整个框架。尝试:

//frame.add(username);
frame.add(username, BorderLayout.NORTH);
于 2013-04-18T23:22:23.460 回答
-1

您的代码的问题是您的文本字段覆盖了整个 jframe

一种方法是在设计视图中减小文本字段的大小,然后在代码中添加这一行

getContentPane().setBackground(Color.BLACK);

于 2017-11-16T11:42:04.017 回答