Hai incluso "resource.h" o come si chiama il file generato dal resource editor con le define per gli ID delle risorse?Originariamente inviato da IlViandante2960
Se usi le MFC, sai di cosa parlo, bastano questi 4 righi:
xx = (CEdit *)GetDlgItem ( IDC_STATIC_SPA );
xx->ShowWindow( false );
xx = (CEdit *)GetDlgItem ( IDC_EDIT7_INT4 );
xx->SetWindowText( StrOutput );
Nel VS2012 la GetDlgItem mi torna un puntatore NULL in entrambi i casi dandomi l'errore sulle 'IDC_STATIC_SPA' e 'IDC_EDIT7_INT4' dicendomi che non sono definiti. Mentre sono controlli definitissimi!!!
Perché le MFC erano un framework vagamente accettabile negli anni '90, quando VC++ non supportava metà delle features del C++, attualmente sono abbastanza terribili rispetto alle alternative - macro mastodontiche, message maps, supporto dubbio alle eccezioni, astrazione estremamente ridotta rispetto alle WinAPI (rispetto a cui è una "leaky abstraction"), nessun uso di idiomi "moderni" come MVC, ... basta confrontarla con il .NET Framework (in ambito managed) o le Qt (in ambito unmanaged) per vedere che c'è di molto meglio (e se rimani nell'ambito delle classi Qt guadagni "quasi gratis" la portabilità su Linux e Mac OS X).(Perchè ti fa specie iniziare un progetto ex-novo con le MFC alle soglie del 2014????)
Inoltre, da quanto ne so Microsoft si limita a mantenere le MFC più o meno funzionanti, ma non hanno nessun interesse ad aggiungere grosse funzionalità, visto che ciò su cui stanno spingendo adesso è WinRT e WPF.

Rispondi quotando