Newsgroup: it.comp.programmare.win32
Titolo: [wxWindows] Chiarimenti

Premessa: uso vc++ 6
Credo di aver bisogno di alcuni chiarimenti in merito al modo di
procedere per la creazione di un'applicazione con wxwindows.
Allora i miei dubbi sono questi: 
1) Ho visto molti esempi inclusi nell'installazione di wx, e tutti
hanno delle risorse, per es. finestre di dialogo, chiamate:
"WXCAPTIONDIALOG", "WXNOCAPTIONDIALOG", "WXRESIZABLEDIALOG"...
oppure menu "WXWINDOWMENU". Che ruolo hanno? E' indispensabile crearle
o se ne può fare a meno?
2) Ho fatto caso che, compilando uno degli esempi forniti, nella
finestra di debug compare la scritta: 
Configuration: (nomeprogramma) - Win32 Release DLL-
mentre nel progetto che ho appena creato: 
Configuration: (nomeprogramma) - Win32 Debug
Cosa significa?
Andando su Set Active Configuration posso scegliere solo tra Win32
Debug e Release... non appare nessun Release DLL. Cosa comporta questa
scelta?
3) Ho provato a scrivere un programma preso dall'help, eppure non
funziona, mi da sempre:
Build : warning : failed to (or don't know how to) build
'C:\wx\Project\boo\Debug\boo.pch'
c:\wx\project\boo\boo.cpp(86) : fatal error C1010: unexpected end of
file while looking for precompiled header directive
dove potrei "sbagliare"?
Vi posto il prog, anche se lo trovate sicuramente nell'help
// For compilers that support precompilation, includes "wx/wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
    #pragma hdrstop
#endif
#ifndef WX_PRECOMP
    #include "wx/wx.h"
#endif
class MyApp: public wxApp
{
    virtual bool OnInit();
};
class MyFrame: public wxFrame
{
public:
    MyFrame(const wxString& title, const wxPoint& pos, const wxSize&
size);
    void OnQuit(wxCommandEvent& event);
    void OnAbout(wxCommandEvent& event);
private:
    DECLARE_EVENT_TABLE()
};
enum
{
    ID_Quit = 1,
    ID_About,
};
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
    EVT_MENU(ID_Quit,  MyFrame::OnQuit)
    EVT_MENU(ID_About, MyFrame::OnAbout)
END_EVENT_TABLE()
IMPLEMENT_APP(MyApp)
bool MyApp::OnInit()
{
    MyFrame *frame = new MyFrame( "Hello World", wxPoint(50,50),
wxSize(450,340) );
    frame->Show( TRUE );
    SetTopWindow( frame );
    return TRUE;
}
MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const
wxSize& size)
       : wxFrame((wxFrame *)NULL, -1, title, pos, size)
{
    wxMenu *menuFile = new wxMenu;
    menuFile->Append( ID_About, "&About..." );
    menuFile->AppendSeparator();
    menuFile->Append( ID_Quit, "E&xit" );
    wxMenuBar *menuBar = new wxMenuBar;
    menuBar->Append( menuFile, "&File" );
    SetMenuBar( menuBar );
    CreateStatusBar();
    SetStatusText( "Welcome to wxWindows!" );
}
void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
{
    Close( TRUE );
}
void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
{
    wxMessageBox( "This is a wxWindows' Hello world sample",
                  "About Hello World", wxOK | wxICON_INFORMATION );
}
--
Ho trovato un sito eccezionale: te poi scarica' la coscienza. 
S. Disegni
Clicca sul link per contattarmi direttamente da ICQ
http://msg.mirabilis.com/scripts/contact.dll?msgto=32405502

 [...]
Deve esserci un problema con gli header precompilati, se ben ricordo devi 
impostare qualche opzione nel progetto. Prova a guardare le impostazioni 
dei file di esempio.
-- 
Marco Barisione (ICQ 84277092)