Forum Stats

  • 3,855,690 Users
  • 2,264,543 Discussions
  • 7,906,138 Comments

Discussions

[Resuelto / Solved] Look And Feel (LAF)

Reynald0
Reynald0 Member Posts: 2
edited Feb 26, 2015 6:29PM in Abstract Window Toolkit (AWT)

Buenos días, tardes o noches muchachos! Explico un poco el tema: resulta que estoy usando un LAF (Look And Feel), de manera más específica  Synthetica BlueLight Look and Feel http://www.javasoft.de/synthetica/themes/

pero cuando ejecuto por primera vez el código (prueba) me sale la típica ventana de Java y no se aplica por completo el estilo o tema que apliqué, por otro lado al aplicar un "dispose();" y ejecutar nuevamente el código se logra visualizar bien.


Entonces las preguntas son ¿Esto es por defecto? ¿Hay alguna solución? ¿Que me recomiendan hacer? , les dejo el código y una imagen por si lo necesitan.


Look_And_Feel.gif



import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JMenuBar;
import Utilerias.Apariencia;
import componentes.CompMenu;
import componentes.CompMenuItem;


public class pruebaMenu extends JFrame implements ActionListener
{
   private JMenuBar     menuBarra;
   private CompMenu     menu;
   private CompMenuItem item;
  
   public pruebaMenu()
   {
                             new Apariencia(Apariencia.SYNTHETICA_BLUE_LIGHT);
      menuBarra = new JMenuBar();
      setJMenuBar(menuBarra);
      menu = new CompMenu(menuBarra,"Menu_1");
      item = new CompMenuItem(menu,"Reynald0",this);
      this.setVisible(true);
      this.setBounds(200,200,400,300);
      setDefaultCloseOperation(EXIT_ON_CLOSE);
   }
  
   public void actionPerformed(ActionEvent pE)
   {
      if(pE.getSource().equals(item))
      {
         System.out.println("El menu2");
         dispose();
         new pruebaMenu();
      }
   }
  
   public static void main(String[] args)
   {
      new pruebaMenu();
   }
}

De antemano MUCHAS gracias por su ayuda y tiempo! Un cordial saludo!

78afe423-bf82-4a16-a995-f17bb03f3974

Best Answer

  • Reynald0
    Reynald0 Member Posts: 2
    edited Feb 26, 2015 6:28PM Answer ✓

    La solución es colocar

    new Apariencia(Apariencia.SYNTHETICA_BLUE_LIGHT); 

    Antes de mandar a llamar el JFrame para que se apliquen los cambios, debe quedar así:

    1. public static void main(String[] args) 
    2.    { 
    3.       new Apariencia(Apariencia.SYNTHETICA_BLUE_LIGHT);
    4.       new pruebaMenu(); 
    5.    } 

Answers

  • Reynald0
    Reynald0 Member Posts: 2
    edited Feb 26, 2015 6:28PM Answer ✓

    La solución es colocar

    new Apariencia(Apariencia.SYNTHETICA_BLUE_LIGHT); 

    Antes de mandar a llamar el JFrame para que se apliquen los cambios, debe quedar así:

    1. public static void main(String[] args) 
    2.    { 
    3.       new Apariencia(Apariencia.SYNTHETICA_BLUE_LIGHT);
    4.       new pruebaMenu(); 
    5.    } 
This discussion has been closed.