也许这是一个愚蠢的问题,但我已经尝试在线找到解决方案,没有人能带我到解决方案。我创建了一个有2个jPanel的程序,我打算在程序启动时显示jPanel1或单击jLabel1。然后当我单击jLabel2时,jPanel1隐藏,并显示jPanel2。但只有ipv4Menus可以显示(即使我点击ipv4但它确实显示)。当我点击ipv6但没有显示任何面板时。
这是我的程序的类比,发生了问题:
//create jPanel1 (ipv4Menus) & 2 (ipv6Menus) variables;
//create jLabel1 (ipv4but) & 2 (ipv6but) variables;
//this is groupLayout which showing
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel4, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 255, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, 0)
.addComponent(ipv4Menus, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(ipv4Menus, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(0, 0, 0)
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
);
这是ipv4but的mouselistener:
ipv4But.addMouseListener(new java.awt.event.MouseAdapter() {
@Override
public void mouseClicked(java.awt.event.MouseEvent evt) {
remove(ipv6Menus);
add(ipv4Menus);
revalidate();
repaint();
ipv4ButMouseClicked(evt);
}});
这是ipv6but的mouselistener:
ipv6But.addMouseListener(new java.awt.event.MouseAdapter() {
@Override
public void mouseClicked(java.awt.event.MouseEvent evt) {
remove(ipv4Menus);
add(ipv6Menus);
revalidate();
repaint();
ipv6ButMouseClicked(evt);
}});
抱歉英文不好或格式不好,我刚来这里。任何形式的回应我会很高兴和感谢。