Code Blocks

Riquadro di dialogo personalizzato

Verificare il funzionamento dell'applicazione dando il comando: Build and Run

Salvare il File

Aprire l'Editor di menu ed aggiungere la voce "Salva" nel menu File.

Nel pannello Resources Selezionare la voce di menu "Salva".

Nel pannello delle Proprietà / Eventi associare il gestore dell'evento onSalva al comando di menu.

Nella sezione di inclusione dei file aggiungere la riga: #include

Completare il gestore dell'evento onSalva

void BiblioFrame::onSalva(wxCommandEvent& event)
{
    wxArrayString righe = ListBox1->GetStrings();
    wxTextFile file( _("biblio.txt") );
    (file.Exists() ? file.Open() : file.Create());

    size_t nRighe = righe.Count();
    for( size_t i = 0 ; i < nRighe ; ++i )
        file.AddLine( righe[ i ] );

    file.Write();
    file.Close();
}

Nota: il parametro _("biblio.txt") passato al costruttore file è una macro, trattino+coppia di parentesi tonde, che trasforma la codifica dei caratteri della stringa in modo da rappresentarli come un oggetto Stringa.

Dall'esempio si vede che i salvataggi successivi si accodano alle righe già presenti nel file di testo. Si dovrebbe Creare sempre il file, allo scopo di cancellare ogni volta il suo contenuto e riscriverlo.

Aprire un file

Avviare l'editor di menu

Aggiungere la voce di menu Apri nel menu File.

Nel pannello Resources selezionare il comando Apri del menu File

Nel pannello di gestione delle proprietà e degli Eventi associare il gestore onApri, al comando Apri:

void BiblioFrame::onApri(wxCommandEvent& event)
{
    wxTextFile file( _T("biblio.txt") );
    file.Open();

    size_t nRighe = file.GetLineCount();
    for (int i=0; i<nRighe; i++) {
        ListBox1->Append(file.GetLine(i));
    }

}