|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2008
Messaggi: 8224
|
[C++] Inserire icona "Salva" su bottone (MFC VisualC++)
Sto imparando a utilizzare le MFC che VisualStudio 6 mette a disposizione per fare le GUI. Non riesco a capire come mettere un'icona su un pulsante (voglio creare il pulsantino SALVA e APRI con le stesse icone di windows).
Dando un'occhiata ai file sorgente non riesco a trovare il file dove vengono dichiarati i bottoni e tutta la GUI, magari servono quelli non lo sò. Come si fà?
__________________
System Failure |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Welcome to the strange world of MFC
http://www.codeproject.com/KB/buttons/iconbutton.aspx Tutto questo codice per fare un pulsante con una icona, cose che gli altri framework ti offrono gratuitamente. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2008
Messaggi: 8224
|
OOOHH, allora visto che ti indendi di code::blocks mi devi aiutare ad installarlo xkè io ci ho già provato 2 volte ma non ci riesco. A quanto pare devo usare le WxWidget (giusto?) xò mi blocco al punto della compilazione dei sorgenti di questo plugin, xkè mi dà errori strani e mi si ferma.
Cosa intendi per altri framework, io sono alle prime armi e ho fatto con ciò che avevo! Mi aiuteresti?
__________________
System Failure Ultima modifica di Perseverance : 15-04-2010 alle 22:28. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Vuoi usare un framework diverso da MFC ? http://qt.nokia.com/downloads
Ci sono IDE e librerie. |
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: Jul 2007
Messaggi: 45
|
Quote:
se scarichi questo pacchetto e lo installi ti ritrovi già tutto pronto per sviluppare: SDK e QtCreator (un ottimo IDE) il tutto già configurato. |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 2008
Messaggi: 8224
|
Ti ringrazio molto, mi metterò a studiare questo Qt SDK. Intanto però ho perseverato nel cercare risposta sulle MFC e ho capito che devo ridefinire il metodo disegna_bottone, però sono davvero criptiche le MFC. Ho seguito questa guida http://www.codeguru.com/cpp/controls...icle.php/c5157
Ho installato l'SDK completo di quel programma che mi hai linkato, mi ha portato via mezz'ora per l'installazione ma mi pare un bel programmino per sviluppare in c++ GUI.
__________________
System Failure |
|
|
|
|
|
#7 | ||
|
Member
Iscritto dal: Jul 2007
Messaggi: 45
|
Quote:
Quello che in MFC fai in una giornata di lavoro con le Qt lo fai in un decimo del tempo, senza contare poi che le MFC NON sono portabili, le Qt SI. Quote:
|
||
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Fai conto che quello che hai trovato scritto su quella pagina per cambiare il colore dello sfondo e del testo con le Qt si fa così:
ui->pushButton->setAutoFillBackground(true); ui->pushButton->setStyleSheet("background-color: rgb(255, 0, 0); color: rgb(255, 255, 255)"); |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Per farti apprezzare ancora di più, crea un nuovo progetto con Qt, metti qualche pulsante.
Ora apri il main e modificalo così: Codice:
#include <QtGui/QApplication>
#include "mainwindow.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
a.setStyleSheet("QPushButton {"\
"background-color: red;"\
"border-style: outset;"\
"border-width: 2px;"\
"border-radius: 10px;"\
"border-color: beige;"\
"font: bold 14px;"\
"min-width: 10em;"\
"padding: 6px;"\
"};"\
"QPushButton:pressed {"\
"background-color: rgb(224, 0, 0);"\
"border-style: inset;"\
"};");
MainWindow w;
w.show();
return a.exec();
}
Ultima modifica di cionci : 16-04-2010 alle 13:12. |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Jul 2008
Messaggi: 8224
|
UeeUee calma, devo ancora capire dove sono i bottoni per salvare e aprire i progetti
__________________
System Failure |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
3 minuti sono tantini. Mi sembra strano che ci metta così tanto. Prova a liberare un po' di memoria. Quanta ram hai ?
|
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Jul 2008
Messaggi: 8224
|
768 MB di ram, anche quando provai il WxDevC++ col mingw32 i tempi erano quelli. Cosa pensi che sia?
__________________
System Failure |
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Forse ti swappa ? Mi sembrano veramente esagerati. Su Linux ci mette 10 secondi a compilare un progetto. Anche su Windows non mi sembrava che fossero così alti.
|
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Jul 2008
Messaggi: 8224
|
E' davvero strano, ho riavviato e creato un progetto Qt4 GUI, ora in 20 secondi lo compila e lo avvia. Probabilmente faceva così xkè non avevo riavviato il pc da anni. Cmq non ho swap, 768MB di RAM pura.
__________________
System Failure |
|
|
|
|
|
#16 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Fai molto male...è per quello che ti si rallentava. A lungo andare si verifica il fenomeno chiamato frammentazione della Ram. In pratica i programmi fanno fatica a trovare spazio contiguo per allocare memoria. Per fare questo si devo far girare complessi algoritmi di mappatura e spostamento.
Se attivi lo swap non hai di questi problemi, perché periodicamente i programmi vengono scaricati comunque su disco e la ram resta sempre molto più compattata. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:10.




















