Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    [java] problemi con check box

    so ke è un problema banale ma non mi va

    codice:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    
    public class JCheckBoxDemo extends JApplet implements ItemListener 
    {
        
        JTextField jtfScelta;
        
        public void init() 
        {
            
            Container cntPannello  = getContentPane();
            cntPannello.setLayout(new FlowLayout());
    
            ImageIcon iiNormale , iiSopra , iiScelta ;
            
            iiNormale = new ImageIcon("casellaVuota.gif");
            iiSopra   = new ImageIcon("casellaSopra.gif");
            iiScelta  = new ImageIcon("casellaScelta.gif");
            
            JCheckBox cbElenco = new JCheckBox("Gelato", iiNormale);
            cbElenco.setRolloverIcon(iiSopra);
            cbElenco.setSelectedIcon(iiScelta);
            cbElenco.addItemListener(this);
            cntPannello.add(cbElenco);
            
            cbElenco = new JCheckBox("Pizza", iiNormale);
            cbElenco.setRolloverIcon(iiSopra);
            cbElenco.setSelectedIcon(iiScelta);
            cbElenco.addItemListener(this);
            cntPannello.add(cbElenco);
            
            cbElenco = new JCheckBox("Pasta", iiNormale);
            cbElenco.setRolloverIcon(iiSopra);
            cbElenco.setSelectedIcon(iiScelta);
            cbElenco.addItemListener(this);
            cntPannello.add(cbElenco);
            
            jtfScelta = new JTextField(15);
            cntPannello.add(jtfScelta);
            
        }
        
        public void itemStateChanged(ItemEvent ie) 
        {
            JCheckBox cbElenco = (JCheckBox)ie.getItem();
            jtfScelta.setText(cbElenco.getText());
        }
        
    }
    in consolle l'errore è ->

    java.security.AccessControlException: access denied (java.io.FilePermission casellaVuota.gif read)

    at java.security.AccessControlContext.checkPermission (AccessControlContext.java:270)

    at java.security.AccessController.checkPermission(Acc essController.java:401)

    at java.lang.SecurityManager.checkPermission(Security Manager.java:542)

    at java.lang.SecurityManager.checkRead(SecurityManage r.java:887)

    at sun.awt.SunToolkit.getImageFromHash(SunToolkit.jav a:486)

    at sun.awt.SunToolkit.getImage(SunToolkit.java:500)

    at javax.swing.ImageIcon.<init>(ImageIcon.java:81)

    at javax.swing.ImageIcon.<init>(ImageIcon.java:107)

    at JCheckBoxDemo.init(JCheckBoxDemo.java:35)

    at sun.applet.AppletPanel.run(AppletPanel.java:347)

    at java.lang.Thread.run(Thread.java:536)


    AIUTOOO !!!

  2. #2
    Utente di HTML.it L'avatar di userfra
    Registrato dal
    Jul 2001
    Messaggi
    1,418
    sei sicuro che il percorso dell'immagine è giusto?
    -------------------------------------------------
    Il fumo nuoce gravemente alla salute

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    2,894
    Ma scusa l'oggetto cbElenco lo crei TRE volte???


  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    315
    Con un applet non puoi accedere al filesystem dell'utente, ma solo ai file scaricati con l'applet. Metti, quindi, le immagini in una direcotry interna rispetto alla root dell'applet, alla quale puoi accedere a partire dal percorso restituito dal metodo getCodeBase()
    Ciao,
    Lorenzo

  5. #5
    le imagini stanno nella stesa cartella del file .class

    i nomi son certo ke son quelli !!!

    cbElenco 3 volte perkè son 3 scelte

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    2,894
    Originariamente inviato da innovatel
    le imagini stanno nella stesa cartella del file .class

    i nomi son certo ke son quelli !!!

    cbElenco 3 volte perkè son 3 scelte
    Cosa intendi per "sono tre scelte"? Vuoi dire che sono 3 JCheckBox?

    Allora potevi creare tre oggetti con nomi diversi...

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    40
    prova con

    codice:
    new ImageIcon(getClass().getResource(IMAGE_NAME));
    Con un applet non puoi accedere al filesystem dell'utente, ma solo all'URL dalla quale hai scaricato l'applet: devi usare url anche per accedere al filesystem.

  8. #8
    sei un grande. ora va.
    posto il codice finale
    codice:
    /*
     * JCheckBoxDemo.java
     *
     * Created on 26 novembre 2002, 14.34
     */
    
    /**
     *
     * @author  andrea
     */
    import java.awt.* ;
    import java.awt.event.* ;
    import java.io.FilePermission ;
    import javax.swing.* ;
    import java.applet.Applet ;
    import java.net.* ;
    
    public class JCheckBoxDemo extends JApplet implements ItemListener 
    {
        
        JTextField jtfScelta;
        
        public void init() 
        {
            
            Container cntPannello  = getContentPane();
            cntPannello.setLayout(new FlowLayout());
    
            
            ImageIcon iiNormale , iiSopra , iiScelta ;
            
            iiNormale = new ImageIcon(getClass().getResource("immagini/casellaVuota.gif"));        
            iiSopra   = new ImageIcon(getClass().getResource("immagini/casellaSopra.gif"));        
            iiScelta  = new ImageIcon(getClass().getResource("immagini/casellaScelta.gif"));        
            
            
            JCheckBox cbElenco = new JCheckBox("Gelato", iiNormale);
            cbElenco.setRolloverIcon(iiSopra);
            cbElenco.setSelectedIcon(iiScelta);
            cbElenco.addItemListener(this);
            cntPannello.add(cbElenco);
            
            cbElenco = new JCheckBox("Pizza", iiNormale);
            cbElenco.setRolloverIcon(iiSopra);
            cbElenco.setSelectedIcon(iiScelta);
            cbElenco.addItemListener(this);
            cntPannello.add(cbElenco);
            
            cbElenco = new JCheckBox("Pasta", iiNormale);
            cbElenco.setRolloverIcon(iiSopra);
            cbElenco.setSelectedIcon(iiScelta);
            
            cbElenco.addItemListener(this);
            cntPannello.add(cbElenco); 
            
            jtfScelta = new JTextField(15);
            cntPannello.add(jtfScelta);
             
            
        }
        
        public void itemStateChanged(ItemEvent ie) 
        {
            JCheckBox cbElenco = (JCheckBox)ie.getItem();
            jtfScelta.setText(cbElenco.getText());
        }
        
    }

  9. #9
    Utente di HTML.it L'avatar di userfra
    Registrato dal
    Jul 2001
    Messaggi
    1,418
    Originariamente inviato da innovatel
    le imagini stanno nella stesa cartella del file .class

    i nomi son certo ke son quelli !!!

    cbElenco 3 volte perkè son 3 scelte

    ora hai capito perché ti avevo fatto la domanda?
    -------------------------------------------------
    Il fumo nuoce gravemente alla salute

  10. #10

    * user

    se la domanda era per me ... non ho capito

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