Duda con el manejo de checkbox
tengo una serie de checkbox, ellos está ubicados en forma de lista uno debajo de otro, y tengo un panel al lado de ellos, lo que deseo es que cuando de clic en uno de los checkbox se me agregue un nuevo checkbox en el panel.
Uso el evento stateChanged donde introduzco el siguiente código
private void nombresStateChanged(javax.swing.event.ChangeEvent evt) {
if(nombres.isSelected()==true)
{
JCheckBox nombres1 = new JCheckBox();
Visualizar.add(nombres1);
nombres1.setVisible(true);
}
}
inicialmente me lo agrega, pero el checkbox original se me bloquea y el de abajo de la lista de checkbox también se me bloquea.
Alguna sugerencia? Gracias de antemano
- Inicie sesión o regístrese para enviar comentarios
«ItemEvent» en lugar de «ChangeEvent»
El evento para escuchar un cambio de estado de selección de una casilla de verificación en Java Swing (i.e.
) debe ser tipo de
en lugar de
.
En otras palabras:
Y en cuanto al congelamiento de la interfaz, seguramente hay otras líneas involucradas que no han sido incluidas en tu publicación.
~~~
gracias por tú aclaración
gracias por tú aclaración pero estoy usando netbean 8.1 y busco en los eventos de item y solo me sale el itemStateChanged, y trate de introducir tú código pero me manda error
ya logré ver el error y lo
ya logré ver el error y lo compusé, me quedó de la siguiente manera:
public Rpt_HHRR() {
initComponents();
this.setLocationRelativeTo(null);
//Conecta a la base de datos
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://xxx.xxx.xxx.xxx:xxxx;databaseName=xxxx;user=xx; password=xxxxxxxxx;";
con=DriverManager.getConnection(url);
}
catch (Exception e)
{
e.printStackTrace();
}
nombres.addItemListener(new ItemListener()
{
public void itemStateChanged(ItemEvent evt)
{
JCheckBox nombres1 = new JCheckBox();
Mostrar.add(nombres1);
}
});
}
pero lo ejecuto y no pasa nada, yo deseo que el nuevo checkbox que se crea que se agregue a un nuevo panel
Gracias de antemano
Container.validate()
De acuerdo con la documentación de
(1), si modificas el árbol jerárquico de cierto componente, necesitas llamar al método
para mostrar los cambios:
Asumiendo que
(2) sea una instancia de
, tu código se asemejaría a:
Notas
~~~