begin process at 2010 03 17 05:01:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

aider moi un prob de colorisation


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

aider moi un prob de colorisation

lundi 26 juillet 2004 à 18:13:45 | aider moi un prob de colorisation

glaive

je veut changer la couleur de fond de ma fenêtre, des boutons dans MFC

glaive l'epée de la justice et du jeu video
lundi 26 juillet 2004 à 23:50:13 | Re : aider moi un prob de colorisation

thierry la fronde

Membre Club
essais ça.
BOOL MonProgrammeApp::InitInstance()
{
....
SetDialogBkColor(RGB(180,180,250),RGB(0,0,210) );



....}
En variant les valeurs RGB tu changes la couleur du Background et du text. Va voir dans la msdn pour les infos sur la fonction.

mardi 27 juillet 2004 à 20:01:04 | Re : aider moi un prob de colorisation

glaive

non ca ne marche pas t'a pas autre chose?

glaive l'epée de la justice et du jeu video
mercredi 28 juillet 2004 à 10:23:53 | Re : aider moi un prob de colorisation

thierry la fronde

Membre Club
Réponse acceptée !
Qu'est-ce qui ne marche pas exactement ?

J'utilise cette fonction sans problème. Par contre la couleur des boutons ne change pas. Si tu veux changer leur aspect tu peux les affecter à un bitmap.

Pour changer la couleur des textes (CEdit, CStatic...) tu peux surcharger la fonction OnCtrlColor().

HBRUSH CCitationDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

if (pWnd->GetDlgCtrlID() == IDC_EDIT)
{

pDC->SetTextColor(RGB(0, 0, 255));
pDC->SetBkMode(OPAQUE);

}
return hbr;
}

Si tu veux faire des effets sur ta fenètre il faut surcharger la fonction OnEraseBkgnd();
CBitmap ArrierePlan;
BOOL CMaµFenetre::OnEraseBkgnd(CDC* pDC)
{
CDC fdc;
CRect RectClient;
fdc.CreateCompatibleDC(pDC);
CBitmap* pOldBitmap = fdc.SelectObject(&ArrierePlan);
int iBitmapWidth, iBitmapHeight ;
int ixOrg, iyOrg;
GetParent()->GetWindowRect(&RectClient);
BITMAP bm;
ArrierePlan.GetObject(sizeof(BITMAP),&bm);
iBitmapWidth = bm.bmWidth;
iBitmapHeight = bm.bmHeight;


if (iBitmapWidth >= RectClient.Width() &&
iBitmapHeight >= RectClient.Height() )
{
pDC->BitBlt (RectClient.left,
RectClient.top,
RectClient.Width(),
RectClient.Height(),
&fdc,
0, 0, SRCCOPY );// SRCCOPY
}
else
{
for (iyOrg = 0; iyOrg < RectClient.Height(); iyOrg += iBitmapHeight)
{
for (ixOrg = 0; ixOrg < RectClient.Width(); ixOrg += iBitmapWidth)
{
pDC->BitBlt (ixOrg,
iyOrg,
RectClient.Width(),
RectClient.Height(),
&fdc,
0, 0, SRCCOPY );

}
}
}

fdc.SelectObject(pOldBitmap);
return TRUE;
}

et aussi OnDraw(); pour un dégrader sympa :

void CMaFenetre::OnDraw(CDC* pDC)
{


////////////////////////////////////////
Default();

CWindowDC dc(this);
CBrush Brosse;
CRect Rec;
this->GetWindowRect(&Rec);
Brosse.Attach( (HBRUSH)GetStockObject(LTGRAY_BRUSH));
CRect BarreRc(0,0,Rec.Width(),10);
pDC->FillRect(BarreRc,&Brosse);

float gradient=0;
float CouleurDuDebut=10;
float CouleurDeFin=195;
gradient=(CouleurDeFin-CouleurDuDebut)/Rec.Width();


// DESSINE LE DEGRADE

for(int I=0;I<Rec.Width();I++)
{
int Rouge,Vert,Bleu;
float fRouge,fVert,fBleu;
CPen *pAncienPen;

fRouge=gradient*(float)I-CouleurDuDebut;
fVert =gradient*(float)I-CouleurDuDebut;
fBleu =gradient*(float)I-CouleurDuDebut;

Rouge=(int)fRouge+10;
Vert=(int)fVert+10;
Bleu=(int)fBleu+60;

CPen pen(PS_SOLID,1,RGB(Rouge,Vert,Bleu));
pDC->MoveTo(I,0);
pAncienPen=pDC->SelectObject(&pen);
pDC->LineTo(I,30);
pDC->SelectObject(pAncienPen);

}


CString st("NOM DE MA FENETRE");
pDC->SetTextAlign(TA_BASELINE | TA_CENTER);
pDC->SetTextColor(RGB(255,255,255));
pDC->SetBkMode(TRANSPARENT);

pDC->TextOut((BarreRc.right - 100 ), (BarreRc.bottom +10), st);




}


@+



Cette discussion est classée dans : aider, colorisation


Répondre à ce message

Sujets en rapport avec ce message

programmer un pendu [ par Auberon ] salut,je cherche un site, ou un forum ou qqun qui pourai m'aider a programmer un tit jeu du pendu sous C++Je ne connais pas helas assez ce language po Dev d'un projet en c++ [ par mc.solaar3 ] J'ai envie de faire un projet c++, qui permet de chercher la voiture correspondant le mieux aux préférence de l'utilisateur : (prix, sécurité, comfort Acceder a une base de donnéééééééééééééééééééééééééééééées [ par Ansdou ] SalutAider moi je vous en prie. N y a t il pas un autre moyen d'acceder a une base de données ACCESS 97 sans passer par l'assistant ? Si cela est poss AIDER MOI JE SUIS UN NEWBIZ [ par FUCKMAN ] salut je suis un newbiz j'aimerai connaitre une commande c++ qui permet deffaccer un fichier ainsi celle pour copier un fichier merci davance . asm Programmer needed [ par Blustuff ] Je cherche quelqu'un qui pourrait m'aider sur la conception d'un émulateur DOS, donc quelqu'un qui connait bien l'assembleur, qui pourrait m'aider voi AIDEZ-MOI SVP URGENT [ par Ricpperso ] Bonjour,POuvez-vous m'aider, SVp, c'es trés urgent.Savez-vous comment faire, pour la fonction INSERER quelque chose, dans un document de type RTF.ET S §§ AU SECOUR !!! SVP DE L4AIDE [ par Ricpperso ] Bonjour,POuvez-vous m'aider, SVp, c'es trés urgent.Savez-vous comment faire, pour la fonction INSERER quelque chose, dans un document de type RTF.ET S merci de m'aider borland 5.01 [ par hell ] Bonjour à vous tous, j'ai le logiciel de borland 5.01 pour faire de la programmation en c++ . Je voudrais savoir pourquoi lorsque je clique sur run lo IOSTREAM [ par hell ] Bonjour à vous tous je vous remercie de m'aiderIl arrive souvent avec iostream que je ne suis pa capable de voir mon programme il y a toujour cette e Hyper Hyper important svp aider moi !!!!!!!!!!! [ par ibra04 ] voilà, je dois remettre un travail pour lundi en c++, ça doit etre un petit prog assez basic, c'est en fait une simulation de distributeur d'argent au


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,312 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales