Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - paloma8513

Páginas: [1]
1
Hola Gracias por tu respuesta Kabuto, ter comento lo que hice:

cree una nueva clase como me lo recomiendas con el codigo a continuacion agregando los import correspondientes que me marcaba netbeans.

Código: [Seleccionar]
package Ventanas;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;


public class MiPanel extends JPanel {  //aqui corregi Jpannel por Jpanel

    public JLabel etiqueta;
    public JButton boton;

    public MiPanel(String txtEtiqueta) {
        etiqueta = new JLabel(txtEtiqueta);
        boton = new JButton();
        add(etiqueta);
        add(boton);
    }
}

Aqui no me marca ningun error y la clase se llama MiPanel.java.

Ahora en otro jframe nuevo llamado mis paneles he puesto el siguiente codigo agregando los imports que me indica netbeans y tampoco me marca errores.

Código: [Seleccionar]
package Ventanas;

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


public class MisPaneles extends javax.swing.JFrame {
   
    public MisPaneles() {
        initComponents();
        }

 public static void main(String args[]) {   
    String lugar =("");
        int ocupados = 0;
        int vacios = 35;
        int lugares ;
       
        MiPanel[] misPaneles = new MiPanel[35];

            for (int i = 0; i < 35; i++) {
            misPaneles[i] = new MiPanel("Lugar: " + i);
        }
       
            for (int i = 0; i < 35; i++) {
            if (misPaneles[i].boton.isSelected()) {
                misPaneles[i].setBackground(Color.BLUE);
                String L1 = misPaneles[i].etiqueta.getText();
                lugar = L1;
                vacios --;
                ocupados ++;
                JOptionPane.showMessageDialog (null,"Selecciono el "+ L1 );
            }
            else {
                misPaneles[i].setBackground(Color.GREEN);
                vacios ++;
                ocupados --;
            }
}
        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new MisPaneles().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    // End of variables declaration                   
}

y desgraciadamente no hace nada, no me marca ningun error ejecuto el archivo y me muestra el jframe vacio.

Te comento, lo que yo hice para la tarea fue crear 35 botones uno por uno y si funciona, es mas ya entregue ese trabajo (no quiero que me hagan la tarea) solo me comentaron que hice mucho trabajo y que podia hacerlo mas rapido con el array,

aun no me queda claro como funciona el array pero seguire investigando

mi programa muestra una pantalla para selecionar un lugar de estacionamiento al principio muestra todos en verde ya que esta libres todos, conforme se van selecionando se ponen en azul y asi se quedan hasta que se deselecionan indicandonos que azul es ocupado (por eso los contadores) al selecionar un lugar me indica que lugar seleccione y ese dato lo envia a otra pantalla que gurda el valor, como te digo todo eso ya lo hice solo que boton por boton....


2
Hola soy nueva en el foro y espero puedan ayudarme, estoy haciendo un programa para la escuela y ya realicé el codigo y hace lo que necesito (funciona bien) pero tengo que repetirlo en 105 botones,  :(  me comentan que con un array puedo hacerlo más rapido y no hacerlo 1 por 1. ¿Podrían ayudarme con eso del array para ver como puedo hacer que se repita 104 veces más...?

Código: [Seleccionar]
public class E1 extends javax.swing.JFrame {
   
String lugar =("");
int ocupados = 0;
int vacios = 35;
int lugares ;

    public E1() {
        initComponents();
       
        jPanel1.setBackground(Color.GREEN);
        rbtn1.addActionListener(new ActionListener(){
           
    public void actionPerformed(ActionEvent e) {
           
        if(rbtn1.isSelected())
            {
            jPanel1.setBackground(Color.BLUE);
            String L1 = lbl1.getText();
            lugar = L1;
            vacios --;
            ocupados ++;
            JOptionPane.showMessageDialog (null,"Selecciono el "+ L1 );
            }
        else{
            jPanel1.setBackground(Color.GREEN);
            vacios ++;
            ocupados --;
            }
        }
    });

lo que hace mi codigo es que si se seleciona un boton el panel cambia de color a azul y si se des selecciona cambia a verde a su vez si se selecciona mueve los contadores y me muestra un mensaje indicandome que boton seleccione, si lo deselecciono vuelve a alterar los contadores como les digo funciona bien y hace lo que quiero ahora solo quiero optimizarlo para no repetirlo boton por boton

Gracias

Páginas: [1]

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".