JPanel中的颜色不适用?

时间:2013-12-03 07:22:01

标签: java swing jpanel actionlistener jtextfield

我正在开发Java Swing应用程序。在我的应用程序中,我使用JPanels并将白色添加到背景中,但它无法正常工作。不能猜到为什么?和JPanel边界上的相同问题。 我试了好几次但都失败了。 Evan我正在开发netbeans它不工作。你能救我吗?

public class RegistrationForm extends JFrame {


    public RegistrationForm() {

         initComponents();
         pack();
         setLocationRelativeTo(null);
         this.setVisible(true);

    }   

    private void initComponents() {

        setUndecorated(true);
        jCheckBoxMenuItem1 = new JCheckBoxMenuItem();
        jPanel1 = new JPanel();
        headingLabel = new javax.swing.JLabel();
        conditionTextBox = new javax.swing.JCheckBox();
        joinButton = new javax.swing.JButton();
        firstNameField = new PlaceholderTextField();
        emailField = new PlaceholderTextField();
        userNameField = new PlaceholderTextField();
        passWordField = new PlaceholderPasswordField();
        confirmPassWordField = new PlaceholderPasswordField();
        jButton1 = new javax.swing.JButton();





        jCheckBoxMenuItem1.setSelected(true);
        jCheckBoxMenuItem1.setText("jCheckBoxMenuItem1");

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setBackground(new java.awt.Color(255, 255, 255));
        jPanel1.setBorder(BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
        jPanel1.setBackground(Color.WHITE);
        jPanel1.setLayout(new java.awt.GridBagLayout());

        headingLabel.setFont(new java.awt.Font("Tahoma", 1, 24));
        headingLabel.setText("Join Us Now");

        conditionTextBox.setFont(new java.awt.Font("Segoe UI", 0, 11)); 
        conditionTextBox.setText("I agree to the UAC system terms of service and regulations ");


        joinButton.setFont(new java.awt.Font("Segoe UI", 0, 14)); 
        joinButton.setText("Join");
        joinButton.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                joinButtonActionPerformed(evt);
            }
        });

        firstNameField.setFont(new java.awt.Font("Segoe UI", 0, 18)); 


        emailField.setFont(new java.awt.Font("Segoe UI", 0, 18)); 


        userNameField.setFont(new java.awt.Font("Segoe UI", 0, 18)); 
        userNameField.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                userNameFieldActionPerformed(evt);
            }
        });

        passWordField.setFont(new java.awt.Font("Segoe UI", 0, 18)); 

        confirmPassWordField.setFont(new java.awt.Font("Segoe UI", 0, 18)); 


        jButton1.setActionCommand("closeRegistretion");

       //then adding components                   


    // Variables declaration - do not modify                     
    private javax.swing.JCheckBox conditionTextBox;
    private PlaceholderPasswordField confirmPassWordField;
    private PlaceholderTextField emailField;
    private PlaceholderTextField firstNameField;
    private javax.swing.JLabel headingLabel;
    private javax.swing.JButton jButton1;
    private javax.swing.JCheckBoxMenuItem jCheckBoxMenuItem1;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JButton joinButton;
    private PlaceholderPasswordField passWordField;
    private PlaceholderTextField userNameField;
    // End of variables declaration                   
}

2 个答案:

答案 0 :(得分:1)

使用此代码,在此代码中,我们制作一个背景颜色的面板: -

import java.awt.Color;
import javax.swing.JPanel;

public class NewClass1 extends javax.swing.JFrame 
{
    public NewClass1() {            
         setLayout(null);
         JPanel panel=new JPanel();
         panel.setOpaque(true);
         add(panel);
         panel.setBackground(Color.red);
         panel.setBounds(0,0,400,300);
    }    

    public static void main(String args[]) {

        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new NewClass1().setVisible(true);
            }
        });
    }
}

答案 1 :(得分:0)

我认为你忘了将JPanel添加到你的框架内容窗格中。像

这样的东西
getContentPane().add(jPanel1);