Visualizzazione dei risultati da 1 a 10 su 11

Hybrid View

  1. #1
    Cattura.JPG

    Questa è la mia finestra di dialogo. E' possibile ricrearla utilizzando un JDialog? Magari potendo inserire un immagine di sfondo nella JDialog. Un'altra domanda, è possibile passare come parametro in un metodo una serie di istruzioni?

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Quote Originariamente inviata da ChristianC Visualizza il messaggio
    E' possibile ricrearla utilizzando un JDialog?
    Certo. Esistono diversi esempi on-line e, soprattutto, nel tutorial sull'uso delle Dialog.


    Magari potendo inserire un immagine di sfondo nella JDialog.

    Certamente, esattamente come faresti per una normalissima finestra o un pannello.


    Un'altra domanda, è possibile passare come parametro in un metodo una serie di istruzioni?
    No.
    Java, a differenza di altri linguaggi come C/C++ non permette il passaggio di puntatori a funzione. Ma non ce n'è la necessità: il tutto si risolve mediante l'uso delle interfacce. Un piccolo esempio:

    Definisco una interfaccia che espone un metodo "eseguiComandi()"

    codice:
    public interface Esecutore {
       void eseguiComandi();
    }

    Quando avrò bisogno di "passare ad un oggetto" un elenco di comandi da eseguire, semplicemente implemento tale interfaccia in una classe concreta (anche anonima) e lo passo... l'oggetto si limiterà a richiamare il metodo "eseguiComandi()" sull'istanza passata:


    codice:
    public class ChiEsegue {
       ...
       public void setComandi(Esecutore e) {
          // Eseguo l'elenco di "comandi"
          e.eseguiComandi();
       }
    }
    
    ...
    
    public class ChiFaEseguire {
       ...
       private ChiEsegue chiEsegue = ...;
       ...
       public void metodo() {
          // Devo far esegure a "chiEsegue" un elenco di comandi
          Esecutore e = new Esecutore() {
             @Override
             public void eseguiComandi() {
                ...   // Elenco di comandi che dovranno essere eseguiti da "chiEsegue"
             }
          }
    
          chiEsegue.setComandi( e );
       }
    }

    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
    Ho un dubbio, quando richiami alla fine del metodo "metdo()" setComandi lo farà eseguire immediatamente, senza aspettare una risposta dall'utente. Avrei risolto il problema in un modo molto empirico e molto poco elegante, però vorrei approfondire questo metodo con le interfacce.

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.