Spero sia ancora interessato.
La creazione del file binario la puoi fare con queste poche righe di codice (sostuisci i valori che ho messo nell'array con quelli che ti servono):
int[] array = new int[] {0,1,1,0};
java.io.ObjectOutputStream out = new java.io.ObjectOutputStream(new java.io.FileOutputStream("file.dat"));
out.writeObject(array);
out.close();
La versione base dell'interfaccia grafica con i bottoni per lanciare le applicazioni potrebbe essere la seguente:
class InterfacciaGraficaModuli extends javax.swing.JFrame
{
private final String[] nomeApplicazioni = new String[] {"Rubrica", "Calcolatrice", "Applicazione 3", "Applicazione 4"};
InterfacciaGraficaModuli()
{
java.awt.Container pannelloBottoni;
javax.swing.JButton bottone;
pannelloBottoni = getContentPane();
pannelloBottoni.setLayout(new java.awt.GridLayout(0,1));
int[] abilitazioneBottoni = null;
try { abilitazioneBottoni = leggiFileAbilitazioneBottoni(); } catch (Exception e) { e.printStackTrace(); }
if ((abilitazioneBottoni != null) && (abilitazioneBottoni.length == nomeApplicazioni.length))
for (int i = 0; i < nomeApplicazioni.length; i++)
{
bottone = new javax.swing.JButton(nomeApplicazioni[i]);
pannelloBottoni.add(bottone);
bottone.setEnabled((abilitazioneBottoni[i] == 1));
}
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
pack();
}
private int[] leggiFileAbilitazioneBottoni() throws java.io.IOException, ClassNotFoundException
{
java.io.ObjectInputStream in = new java.io.ObjectInputStream(new java.io.FileInputStream("file.dat"));
return (int[]) in.readObject();
}
public static void main(String[] args) { new InterfacciaGraficaModuli().setVisible(true); }
}
Piero Astolfi