|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2662
|
[C++] MFC CDialog possibile senza resource file?
E' la prima volta che uso le MFC. vorrei creare delle dialogbox senza ricorrere agli script e ai file rc facendo tutto a mano. E' possibile? in rete tutta la documentazione che ho trovato descrive solo come farlo tramite wizard.
grazie |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Si può fare, solo che diventi scemo a posizionare a mano tutti i controlli e chiaramente in caso di ridimensionamento della finestra ottieni una bella schifezza.
Siccome alla M$ non ritengono opportuno usare i sizer... Oltretutto dovresti conoscere bene i meccanismi di funzionamento delle MFC perchè ti devi scrivere a mano tutto: eventi, parametri che ricevono, macro da usare... Forse ti conviene iniziare usando l'editor... e continuare ad usarlo anche in seguito. Io ho dovuto realizzare delle interfacce completamente a mano con le MFC solo perchè l'editor non rapresenta i pixel reali e io avevo a che fare con risoluzioni fisse, per cui non tornava mai niente. Ma non lo consiglierei assolutamente. Piuttosto consiglierei di passare alle wxWidgets, molto più pratiche delle MFC, hanno il look & feel nativo e ti ritrovi gratis un software che compila anche sotto Linux e WinCE (con le dovute limitazioni di CE). |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2662
|
Quote:
![]() avevo iniziato proprio con le wxwidgets ma personalmente le ho ritenute una scelta peggiore. avrei fatto tutto sotto linux ma già che devo programmare sotto winzoz voglio sfruttare al meglio le sue librerie invece che usarne altre che costituiscono un ulteriore layer e mi obbligano a salti mortali per impostare ogni volta che reinstallo il compilatore. se posso permettermi a hai voglia ho un'altra domanda: ho una finestra principale nella quale, dopo aver caricato un file, parte il rendering open gl e quindi dichiaro fin dall'inizio, nella message map, la ON_WM_PAINT. il rendering opengl e la creazione del suo contesto avviene solo dopo aver caricato il file. se apro una dialog non me la fa vedere perchè si sovrappone alla client area, questa lancia un messaggio di paint e viene ridipinta. non c'è modo di sospendere la chiamata o registrare dopo la ON_WM_PAINT, solo quando faccio partire il rendering? [EDIT] risolto: nella mia OnPaint, quando uscivo prima perchè non era attivo il rendering non chiamavo la Codice:
CFrameWnd::OnPaint Ultima modifica di Black imp : 14-01-2008 alle 03:46. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:00.