Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
A New York HP ha messo al centro della scena HP IQ, la piattaforma di IA locale da 20 miliardi di parametri. L’abbiamo vista in funzione: è uno strumento che funziona, pensato per un target specifico, con vantaggi reali e limiti altrettanto evidenti
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è
La PNY GeForce RTX 5080 Slim OC si distingue nel panorama delle GPU di fascia alta per il design compatto a due slot, ispirato alla NVIDIA GeForce RTX 5080 Founders Edition. In questo test analizziamo comportamento termico e prestazioni in gioco, valutando se il formato ridotto comprometta o meno l'esperienza complessiva rispetto alle soluzioni più ingombranti presenti sul mercato.
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei
HUAWEI WiFi Mesh X3 Pro Suite è probabilmente il router mesh più fotogenico che si possa acquistare oggi in Italia, ma dietro il guscio in acrilico trasparente e le luci LED dinamiche c'è una macchina tecnica costruita attorno allo standard Wi-Fi 7, con velocità teoriche Dual-Band fino a 3,6 Gbps e una copertura fino a 120 m² una volta abbinato il router principale all'extender incluso nel kit
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-01-2013, 15:19   #1
ruggeroerre
Member
 
L'Avatar di ruggeroerre
 
Iscritto dal: Aug 2005
Città: pescara in abruzzo
Messaggi: 45
[JAVA] far apparire/scomparire immagini con i pulsanti

salve a tutti
mi sto cimentando con la grafica in java, però non ho capito come far apparire un immagine solo se viene premuto un JButton. questo è il codice che ho scritto, però non ho capito come devono interagire i metodi paintcomponent e actionperformed...

Codice:
public class PanelCol2 extends JPanel implements ActionListener{
   
    JButton b3;
     Image img1;
    
    public PanelCol2() throws MalformedURLException{
    
        super();
       
        b3 = new JButton("cane");
        
        b3.addActionListener(this);
        
        add(b3);
    
        Toolkit tk = Toolkit.getDefaultToolkit(); //estraiamo il toolkit del pannello
        URL url = new URL("http://digital-photography-school.com/wp-content/uploads/2007/07/pet-photograph.jpg");
        img1 = tk.getImage(url); //assegnamo il valore all'immagine a partire dal toolkit
        MediaTracker mt = new MediaTracker(this);//mt si occupa del caricamento delle immagini. il componente su cui avverrà il disegno è il pannello stesso(this)
        mt.addImage(img1, 1);//aggiungiamo l'immagine specificando un num identificativo
    
        try { mt.waitForAll();  //si dice a mt di aspettare il caricamento delle immagini
        }
        catch (InterruptedException e) {} 
    }
    
    public void actionPerformed(ActionEvent e){
    
        Object pulsantepremuto = e.getSource(); 
        
        
        if(pulsantepremuto==b3{  //e ora??????
            

           }
            
            
       public void paintComponent(Graphics g){
    
            super.paintComponent(g);
       
            g.drawImage(img1, 200, 200, null);
            }
vi ringrazio in anticipo
ruggeroerre è offline   Rispondi citando il messaggio o parte di esso
Old 07-01-2013, 23:08   #2
Cait Sith
Senior Member
 
L'Avatar di Cait Sith
 
Iscritto dal: Apr 2005
Messaggi: 309
premetto che è un po' che non uso java e non ricordo il nome corretto delle funzioni del paint, comunque si dovrebbe fare così:

con il bottone tu imposti un boolean (privata della classe principale) che ti dice se devi fare vedere l'immagine o no: se vuoi che cliccando una volta compaia e successivi click siano superflui, nell' actionPerformed fai
Codice:
variable=true;
se invece vuoi che cliccando compaia e ricliccando scompaia fai:
Codice:
variable=!variable
a questo punto la funzione paintComponent (il cui nome prendo per buono perchè non ricordo) deve fare:
Codice:
public void paintComponent(Graphics g){
   super.paintComponent(g);
   if(variable==true) g.drawImage(img1, 200, 200, null);
}
poi per finire nel actionPerformed, aggiungi un
Codice:
repaint();
finale che forza l'aggiornamento del componente grafico

in questo modo dovrebbe funzionare, in ogni caso più o meno rende l'idea di come si deve fare
Cait Sith è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è PNY RTX 5080 Slim OC, sembra una Founders Editio...
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei Wi-Fi 7 con il design di una vetta innevata: ecc...
Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: Intel cerca il riscatto ma ci riesce in parte Core Ultra 7 270K Plus e Core Ultra 7 250K Plus:...
PC Specialist Lafité 14 AI AMD: assemblato come vuoi tu PC Specialist Lafité 14 AI AMD: assemblat...
Il dodicesimo lancio del razzo spaziale ...
Blue Origin sta assemblando il secondo l...
Meta moltiplica gli investimenti in data...
Addio riflessi fastidiosi? Samsung prese...
PlayStation 5, doccia fredda da Sony: i ...
Super Meat Boy 3D: annunciata la data d'...
XT View Matrix, il mid-tower Phanteks ch...
David Sacks lascia il ruolo di 'Crypto C...
LG All Stars 2026: quando l'installatore...
Addio ad Anna's Archive? Ecco la mossa l...
Addio al Mac Pro, Apple mette fine a un ...
Panasonic a MCE 2026: la rivoluzione sil...
Netflix alza la posta: il piano Premium ...
Nimbus Innovation Awards – Cloud Edition...
Wikipedia vieta i contenuti generati dal...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:42.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v