Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » farbiger Kreis

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
11.07.2005, 19:14 Uhr
Antialc



Hi,

kann mir Jemand sagen wie ich in WinApi einen Kreis farbig ausmalen kann?
Wie ich des mit den Standartfarben mach is klar. Aber ich würd meinen Kreis gerne mit eigenen Farben ausmalen.
--
Microsoft Visual C++.NET Version 7
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
11.07.2005, 19:50 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


wie zeichnest du ihn momentan? evtl hilft das Zeichenzeug aus dem Visual C++ in 21 Tagen E-Book
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
12.07.2005, 18:46 Uhr
Antialc



ja sry, wollt ich auch machen. hat des prog aber gerade aufm lappi und gerade keinen bock des rüberzuladen


C++:
case WM_PAINT:
        hdc = BeginPaint(hWnd, &ps);

        SelectObject(hdc, GetStockObject(BLACK_BRUSH));

        hpen = CreatePen(PS_SOLID, 0, RGB(0,255,0));

        SelectObject(hdc, hpen);

        Ellipse(hdc, x+50, 50, x+10, 10);
        EndPaint(hWnd, &ps);
        break;



GetStockObject will ja ein int haben. und da gibt es nunmal nur die vorgeschriebenen defines. und da SelectObject ja ein HGDIOBJ haben will kann ich kein RGB wie bei CreatePen nehmen weil das ja ein COLORREF liefert. casten hab ich glaub auch schon gemacht. hat aber wohl net gefunzt. und da ich nicht glaube, dass mircrosoft den programmierern die möglichkeit vorenthalten will rote kreise zu zeichnen muss es da wohl noch einen anderen weg geben.
--
Microsoft Visual C++.NET Version 7
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
12.07.2005, 18:54 Uhr
Oliver
S2-Pixelgeneral


Du lädst mit

C++:
SelectObject(hdc, GetStockObject(BLACK_BRUSH));



einen schwarzen Pinsel, also wird auch der Kreis schwarz sein.

Du musst dir mit CreateSolidBrush nen eigenen Brush erzeugen und den dann im DC selektieren.
--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
12.07.2005, 20:52 Uhr
Antialc



Gut. CreateSolidBrush is doch schon mal was. Aber irgendwie komm ich trotzdem damit net klar. GetStockObject will ja n int haben. und createsolidbrush liefert mich ja bloß n bool.

In der msdn wurd ich auf CBrush verwiesen. wurd aber net richtig schlau draus was ich jetzt damit soll.
N Beispiel wär denk ziemlich hilfreich bei der Lösung meines Probs, wenn jmd die antwort weiss.
--
Microsoft Visual C++.NET Version 7
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.07.2005, 21:02 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hi du kannst einfach mit:


C++:
SelectObject(hDC,GetStockObject(DC_BRUSH));
SetDCBrushColor(hDC,RGB(00,00,255));



eine beliebige Farbe setzen, das obige mit rgb(0,0,0) wäre das selbe wie


C++:
SelectObject(hdc, GetStockObject(BLACK_BRUSH));


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
13.07.2005, 06:24 Uhr
Antialc



Danke, das sollte klappen.

Bloß was muss ich einbinden um SetDCBrushColor verwenden zu können. Bei mir findet er das erstmal net.
--
Microsoft Visual C++.NET Version 7
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
13.07.2005, 09:47 Uhr
Oliver
S2-Pixelgeneral


Mit CreateSolidBrush kannste es so machen:


C++:

HBRUSH hBrush = CreateSolidBrush(...);
SelectObject(hDC,hBrush);


....

// Nicht vergessen !!
DeleteObject(hBrush);


--
Demokratie ist die Diktatur der Mehrheit.

www.siedler25.org/ ( Siedler2 - Remake )
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
13.07.2005, 12:24 Uhr
Antialc



Danke, so gehts.
--
Microsoft Visual C++.NET Version 7
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: