🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.java
Article #26707

Re: Graficos de fondo??

#26707
From: Guy
Date: Sat, 28 Nov 1998 00:00
78 lines
3460 bytes

Jonathan Revusky wrote:

>
> �Por qu� no das un ejemplo de tu c�digo actual?

        Veamos, lo que he intentado es que el fondo no parpadee, de esta forma
si lo consigo, hago lo mismo con todo lo que se mueve por encima.

    Lo que hacia con paint era:

        Procedimiento Principal

                        ScrollPane sPane1 = new
ScrollPane(ScrollPane.SCROLLBARS_ALWAYS);
                        MiPanel miPanel1 = new MiPanel("grafico");
                        sPane1.add(miPanel1);
                        sPane1.validate();

        MiPanel es algo as�:
                        public class MiPanel extends Panel {
                           Image imagen=null;
                                       //Grafico que se va a colocar sobre el
canvas
                        //CONSTRUCTOR
                            public MiPanel(String ficheroImagen){
                                Toolkit herramientas =this.getToolkit();
                                 imagen= herramientas.getImage(ficheroImagen);

                            }

                       //Sobreescribimos la funcion para que el tama�o del
panel se ajuste a la imagen
                       public Dimension getPreferredSize(){
                              Dimension d = new Dimension();
                              d.height= imagen.getHeight(this);
                              d.width =imagen.getWidth(this);
                             return d;
                       }

                    //Sobreescribimos paint para dibujar la imagen en el panel

                    public void paint(Graphics g){
                       this.update(g);
                    }

                   public void update(Graphics g){

g.drawImage(imagen,0,0,0+imagen.getWidth(this),0+imagen.getHeight(this),this);

                  }
                }//MiPanel

      Y lo que intento ahora con el doble buffering es esto:
                           //Dimensiones del grafico

                   Dimension d= new Dimension(1386,1911);
                   ScrollPane sPane1 = new
ScrollPane(ScrollPane.SCROLLBARS_ALWAYS);
                   Image offImage = scrollPane1.createImage(d.width,
d.height);
                   Graphics offGraphics = offImage.getGraphics();

                   MiPanel fondoPantalla= new MiPanel("grafico");
                   fondoPantalla.paint(offGraphics);
                   scrollPane1.add(fondoPantalla);

                    //MiPanel queda igual

              Con este c�digo resulta que la imagen aparece, pero no parece
mejorar mucho lo del parpadeo, y no se si achacarselo al tama�o de la imagen
(no creo)  o a que no consigo que funcione ( si creo  ) . De todas formas
todavia no lo he probado asi para los gr�ficos de primer plano que es en los
que se notaba mas el parpadeo.


Guy.
Technical Details
Message-ID: <36604175.8D872E19@abonados.cplus.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <365DDDA5.7353817F@abonados.cplus.es> <365DF174.764723F3@jet.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 1116f3,4660b6ff03362f10
X-Google-Attributes: gid1116f3,public
From: Guy <0309651s01@abonados.cplus.es>
Subject: Re: Graficos de fondo??
Date: 1998/11/28
Message-ID: <36604175.8D872E19@abonados.cplus.es>
X-Deja-AN: 416549616
Content-Transfer-Encoding: 8bit
References: <365DDDA5.7353817F@abonados.cplus.es> <365DF174.764723F3@jet.es>
X-Accept-Language: en,es
Content-Type: text/plain; charset=iso-8859-1
Organization: Telefonica Transmision de Datos
Mime-Version: 1.0
Newsgroups: es.comp.lenguajes.java