» »

[VC++] MFC - kako narisati lik? (elipso,krog,...)

[VC++] MFC - kako narisati lik? (elipso,krog,...)

Matjazzek ::

Zdravo,

Imam problem pri risanju preprostih likov v MFC (V okolju VS 2005), kot so elipsa, krog in kvadrat...Ker pa prvič delam z VS 2005 ,bi prosil za pomoč, če kdo slučajno ve kako se to naredi..
sem pa našel neko kodo za risanje, vendar je ne znam uporabiti.., koda je sledeča(za elipso):

CPaintDC dc(this);
CBrush nova;
nova.CreateSolidBrush(RGB(0,0,255));
CBrush* stara = dc.SelectObject(&nova);
dc.Ellipse(50,50,50,50);
dc.SelectObject(stara);

Lik se more narisati ob kliku na gumb...

Prav tako me zanima , kako lahko spremenim ozadje v nekem dialogu?
Hvala za vse odgovore,
Lep pozdrav,
M

DamijanD ::

Riši v OnPaint (WM_PAINT) eventu. Handler tega eventa že ima v parametru dc objekt.
Praktično skoraj celo kodo, ki si jo napisal daj v OnPaint funkcijo. V funkciji OnButtonClick (pač funkcija, ki se sproži ob kliku gunmba) pa kliči Invalidate (ta zahteva ponovno risanje dialoga in s tem se kliče OnPaint funkcija).

Tole je malo po spominu in sintaksa je samo približna...


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[VC++, MFC] OnPaint

Oddelek: Programiranje
5986 (953) whatever
»

mfc problem

Oddelek: Programiranje
161635 (1199) FuI2cY
»

[C++] izris v [x,y]

Oddelek: Programiranje
131154 (856) DuleKrtola
»

[C++ Visual Studio] kako narisati krog?

Oddelek: Programiranje
141464 (1231) c0dehunter
»

[c#] enostavna Igrca -> poraba procesorja 95%

Oddelek: Programiranje
192151 (1515) elKaktus

Več podobnih tem