Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    come si crea un icona in java

    io vorrei creare un icona in java magari creando un metodo che disegna l'icona e poi farla disegnarla in una label con il metodo setIcon(); sicuro secondo me devo instaziare da qualche parte la classe icon.

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Non che abbia capito molto.

    Vuoi caricare un'immagine esistente (da un file) o vuoi proprio disegnarla da zero programmaticamente?

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    seconda opzione. crearla da zero. io avrei ideato già un metodo di disegno ma nn so come farlo visualizzarlo in una jlabel.
    codice:
     public void Disegna() {
            if (getA() < 0) {
                if (getDelta() > 0) {
                    if (getB() == 0 && getC() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX2(), 0, (int) getX2(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        drawLine(0, (int) getD(), 0, (int) getD());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
                    } else {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX2(), 0, (int) getX2(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYV());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        drawLine(0, (int) getD(), 0, (int) getD());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), -130, 180);
                        setColor(Color.GRAY);
                    }
                } else if (getDelta() == 0) {
                    if (getB() == 0 && getC() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        drawLine(0, (int) getD(), 0, (int) getD());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
                    } else {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYV());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        drawLine(0, (int) getD(), 0, (int) getD());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), -130, 180);
                        setColor(Color.GRAY);
                    }
                } else if (getDelta() < 0) {
                    if (getB() == 0 && getC() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        drawLine(0, (int) getD(), 0, (int) getD());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
    
                    } else {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYV());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        drawLine(0, (int) getD(), 0, (int) getD());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), -130, 180);
                        setColor(Color.GRAY);
                    }
                }
            } else {
                if (getDelta() > 0) {
                    if (getB() == 0 && getC() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine(0, (int) getD(), 0, (int) getD());
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX2(), 0, (int) getX2(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
    
                    } else if (getB() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX2(), 0, (int) getX2(), 0);
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
    
                    } else {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine(0, (int) getD(), 0, (int) getD());
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX2(), 0, (int) getX2(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYV());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
                    }
                } else if (getDelta() == 0) {
                    if (getB() == 0 && getC() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine(0, (int) getD(), 0, (int) getD());
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                    } else if (getB() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                    } else {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine(0, (int) getD(), 0, (int) getD());
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getX1(), 0, (int) getX1(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYV());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
    
                    }
                } else if (getDelta() < 0) {
                    if (getB() == 0 && getC() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine(0, (int) getD(), 0, (int) getD());
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
                    } else if (getB() == 0) {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
                    } else {
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.BLACK);
                        drawLine(0, 0, 0, 0);
                        setColor(Color.YELLOW);
                        drawString("Asse Y", 0, 0);
                        drawString("Asse X", 0, 0);
                        setColor(Color.GREEN);
                        drawLine(0, (int) getD(), 0, (int) getD());
                        drawLine((int) getXF(), 0, (int) getXF(), 0);
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYF());
                        drawLine((int) getXF(), (int) getYF(), (int) getXF(), (int) getYV());
                        drawLine(0, (int) getC(), 0, (int) getC());
                        setColor(Color.BLUE);
                        drawArc(0, 0, 200, (int) getAltezza(), 130, 180);
                        setColor(Color.GRAY);
                    }
                }
            }
        }

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Credo che dovrai usare un BufferedImage. Io non ho mai trattato immagini, quindi non ne so abbastanza, ma attraverso tale oggetto dovresti poter recuperare un oggetto Graphics sul quale poter disegnare e dal quale poter poi ottenere un oggetto Image da poter visualizzare/trattare/salvare.

    Cosa siano in questo momento quei metodi che usi (drawLine, drawString) non lo so... sono simili ai metodi dell'oggetto Graphics, ma non vendono richiamati su un tale oggetto.

    Credo ti possa tornare utile il tutorial: http://download.oracle.com/javase/tu.../2d/index.html


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    grazie. sembra che nn vengono richiamati da graphics ma sono gli stessi
    e che ho nascosto i metodi astratti in classe apparte infatti la classe parabolina estende grafico. grafico è la classe dove ci ho schiafato i metodi astratti.
    codice:
    public class parabolina extends grafico
    codice:
    package parabola;
    
    import java.awt.Image;
    import java.awt.Rectangle;
    import java.awt.Shape;
    import java.awt.image.ImageObserver;
    import java.text.AttributedCharacterIterator;
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.FontMetrics;
    import java.awt.Graphics;
    
    public class grafico extends Graphics {
    
        @Override
        public Graphics create() {
            return this.create();
        }
    
        @Override
        public void translate(int x, int y) {
        }
    
        @Override
        public Color getColor() {
            return this.getColor();
        }
    
        @Override
        public void setColor(Color c) {
        }
    
        @Override
        public void setPaintMode() {
        }
    
        @Override
        public void setXORMode(Color c1) {
        }
    
        @Override
        public Font getFont() {
            return this.getFont();
        }
    
        @Override
        public void setFont(Font font) {
        }
    
        @Override
        public FontMetrics getFontMetrics(Font f) {
            return this.getFontMetrics(f);
        }
    
        @Override
        public Rectangle getClipBounds() {
            return this.getClipBounds();
        }
    
        @Override
        public void clipRect(int x, int y, int width, int height) {
        }
    
        @Override
        public void setClip(int x, int y, int width, int height) {
        }
    
        @Override
        public Shape getClip() {
            return this.getClip();
        }
    
        @Override
        public void setClip(Shape clip) {
        }
    
        @Override
        public void copyArea(int x, int y, int width, int height, int dx, int dy) {
        }
    
        @Override
        public void drawLine(int x1, int y1, int x2, int y2) {
        }
    
        @Override
        public void fillRect(int x, int y, int width, int height) {
        }
    
        @Override
        public void clearRect(int x, int y, int width, int height) {
        }
    
        @Override
        public void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) {
        }
    
        @Override
        public void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) {
        }
    
        @Override
        public void drawOval(int x, int y, int width, int height) {
        }
    
        @Override
        public void fillOval(int x, int y, int width, int height) {
        }
    
        @Override
        public void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) {
        }
    
        @Override
        public void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle) {
        }
    
        @Override
        public void drawPolyline(int[] xPoints, int[] yPoints, int nPoints) {
        }
    
        @Override
        public void drawPolygon(int[] xPoints, int[] yPoints, int nPoints) {
        }
    
        @Override
        public void fillPolygon(int[] xPoints, int[] yPoints, int nPoints) {
        }
    
        @Override
        public void drawString(String str, int x, int y) {
        }
    
        @Override
        public void drawString(AttributedCharacterIterator iterator, int x, int y) {
        }
    
        @Override
        public boolean drawImage(Image img, int x, int y, ImageObserver observer) {
            return this.drawImage(img, x, y, observer);
        }
    
        @Override
        public boolean drawImage(Image img, int x, int y, int width, int height, ImageObserver observer) {
            return this.drawImage(img, x, y, width, height, observer);
        }
    
        @Override
        public boolean drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer) {
            return this.drawImage(img, x, y, bgcolor, observer);
        }
    
        @Override
        public boolean drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer) {
            return this.drawImage(img, x, y, width, height, bgcolor, observer);
        }
    
        @Override
        public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer) {
            return this.drawImage(img, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, observer);
        }
    
        @Override
        public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer) {
            return this.drawImage(img, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, bgcolor, observer);
        }
    
        @Override
        public void dispose() {
        }
    }

  6. #6
    provero il BufferedImage se ci sn problemi mandero un post.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.