Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 12 su 12
  1. #11
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    103
    Ok,
    ho apportato le modifiche ma ancora non me la visualizza come mai?

    public class CAMPO extends JFrame {
    ImageIcon fig= new ImageIcon("images/1.png");
    JLabel label= new JLabel(fig);
    JPanel panel= new JPanel();

    public void init(){
    panel.setLayout(null);
    setBackground(Color.cyan);
    }
    public void carica(){
    label.setLocation(200,100);
    panel.add(label);
    this.show();
    }
    public static void main(String[] args){
    CAMPO c = new CAMPO();
    c.carica();
    }

    public void paint(Graphics g){
    g.setColor(Color.green);
    g.fillRect(50,50,960,600);
    g.setColor(Color.white);
    g.drawRect(50,300,60,100);
    g.drawRect(950,300,60,100);
    g.drawRect(50,180,200,340);
    g.drawRect(810,180,200,340);
    g.drawLine(500,50,500,650);
    g.drawOval(410, 250, 180, 180);
    g.drawArc(785,310,80,70,-115,-125);
    g.drawArc(190,310,80,70,-60,120);
    g.drawArc(45,40,20,50,30,-155);
    }
    }

    Un'altra domandina: io avrei bisogno di aggiungere un pannello sotto questo per una pulsantiera, si può attaccare il pannello sotto il graphic?

  2. #12
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Certo.
    Hai aggiunto la Label al pannello... ma non hai aggiunto il pannello alla finestra.
    Io ti suggerisco di utilizzare un costruttore per ciascuna classe che crei e di effettuare le inizializzazioni e inserimenti lì:
    codice:
    public class CAMPO extends JFrame {
       public CAMPO() {
          panel = new JPanel()
          ...
          getContentPane().add( panel );
       }
    }
    Per la seconda domanda: devi impostare un LayoutManager per la finestra. Ad esempio un GridLayout, quindi aggiungere i due pannelli alla finestra:
    codice:
    public class CAMPO extends JFrame {
       public CAMPO() {
          getContentPane().setLayout( new GridLayout(2,1) );   // 2 righe, 1 colonna
          panel1 = new JPanel()
          panel2 = new JPanel();
          ...
          getContentPane().add( panel1 );   // Viene messo sopra
          getContentPane().add( panel2 );   // Viene messo sotto
       }
    }
    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

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 © 2026 vBulletin Solutions, Inc. All rights reserved.