我正在开发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
}
答案 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);