したがって、2番目のJPanelにコンポーネントを追加すると、この問題が発生します。コンポーネントが2番目に表示されないJPanel
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
public class TestSeleccionJugadores2 extends JPanel {
JPanel jpJugador1 = new JPanel();
JPanel jpJugador2 = new JPanel();
TitledBorder titledBorder1 = new TitledBorder("Jugador 1");
TitledBorder titledBorder2 = new TitledBorder("Jugador 2");
Font font1 = new Font("Microsoft JhengHei UI Light", Font.PLAIN + Font.BOLD, 14);
Font font2 = new Font("Microsoft JhengHei UI Light", Font.PLAIN, 13);
JLabel jlJ1 = new JLabel("Es un(a)");
JLabel jlJ2 = new JLabel("Es un(a)");
JLabel jlJ1Nombre = new JLabel("llamada(o)");
JLabel jlJ2Nombre = new JLabel("llamada(o)");
JComboBox<String> opciones1 = new JComboBox<>(new String[] {"Hombre", "Mujer", "Otro"});
JComboBox<String> opciones2 = new JComboBox<>(new String[] {"Hombre", "Mujer", "Otro"});
JTextField nombreJ1 = new JTextField("Jugador 1", 5);
JTextField nombreJ2 = new JTextField("Jugador 2", 5);
public TestSeleccionJugadores2() {
jpJugador1.setLayout(null);
jpJugador2.setLayout(null);
setLayout(null);
jpJugador1.setBounds(10, 25, 200, 100);
jpJugador2.setBounds(10, 120, 200, 100);
setBounds(0,0,300, 300);
titledBorder1.setTitleFont(font1);
titledBorder2.setTitleFont(font1);
jpJugador1.setBorder(titledBorder1);
jpJugador2.setBorder(titledBorder2);
opciones1.setSelectedItem("Otro");
opciones2.setSelectedItem("Otro");
jlJ1.setBounds(10, 30, 80, 20);
opciones1.setBounds(95, 30, 80, 20);
jlJ1Nombre.setBounds(10, 55, 80, 20);
nombreJ1.setBounds(95, 55, 80, 20);
//These are showing in both JPanels.
jlJ2.setBounds(10, 125, 80, 20);
opciones2.setBounds(95, 125, 80, 20);
jlJ2Nombre.setBounds(10, 155, 80, 20);
nombreJ2.setBounds(95, 155, 80, 20);
//Second components.
jpJugador2.add(jlJ2);
jpJugador2.add(opciones2);
jpJugador2.add(jlJ2Nombre);
jpJugador2.add(nombreJ2);
jpJugador1.add(jlJ1);
jpJugador1.add(opciones2);
jpJugador1.add(jlJ1Nombre);
jpJugador1.add(nombreJ1);
add(jpJugador2);
add(jpJugador1);
}
}
秒数のコンポーネントがJPanelに表示されません。最初のJPanelに追加しましたが、同じ問題があります。 他のクラスでは、mainメソッドを使用して、プリンシパルJPanelをフレームに追加します。
'null'なのでレイアウトはあなたが両方のパネルに' opciones2'を追加しようとしました – MadProgrammer
問題の第1の仮定によりだろう。それは1つにしかできません。 – AJNeufeld
コンポーネントは1つのコンテナにしか置かれません。2番目のコンテナにコンポーネントを追加しようとすると、自動的にコンテナから削除されます – MadProgrammer