CPen::CPen
Konstrukce CPen objektu.
CPen( );
CPen(
int nPenStyle,
int nWidth,
COLORREF crColor
);
CPen(
int nPenStyle,
int nWidth,
const LOGBRUSH* pLogBrush,
int nStyleCount = 0,
const DWORD* lpStyle = NULL
);
Parametry
nPenStyle
Určuje styl pera.V první verzi konstruktor tento parametr může být jedna z následujících hodnot:PS_SOLID vytvoří pevné pera.
PS_DASH vytvoří přerušované pera.Platné pouze v případě, že šířka pera je menší, zařízení nebo 1 jednotek.
PS_DOT vytvoří tečkované pera.Platné pouze v případě, že šířka pera je menší, zařízení nebo 1 jednotek.
PS_DASHDOT vytvoří pera s různými pomlčky a tečky.Platné pouze v případě, že šířka pera je menší, zařízení nebo 1 jednotek.
PS_DASHDOTDOT vytvoří pera s různými pomlčky a tečky double.Platné pouze v případě, že šířka pera je menší, zařízení nebo 1 jednotek.
PS_NULL vytvoří null pera.
PS_INSIDEFRAME vytvoří pero, které v rámci uzavřených obrazců vyrobené výstup funkce rozhraní Windows GDI, které určete ohraničovací obdélník nakreslí (například Elipsa, Obdélník, RoundRect , Pie , a Chord funkce členů).Při použití tohoto stylu s GDI systému Windows výstup funkce, které neurčíte ohraničovacího rámečku (například LineTo členské funkce), pero kreslicí oblasti snímku není omezena.
Druhá verze CPen konstruktor Určuje kombinaci typu, stylu, atributů spojení a zakončení.Hodnoty z každé kategorie by měly společně pomocí bitového operátoru OR (|).Typ pera, může být jedna z následujících hodnot:
PS_GEOMETRIC vytvoří geometrické pera.
PS_COSMETIC vytvoří symbolické pera.
Druhá verze CPen konstruktor přidá následující styly pera pro nPenStyle :
PS_ALTERNATE vytvoří pera, který nastaví jiné každý pixel.(Tento styl je použitelná pouze pro kosmetické pera).
PS_USERSTYLE vytvoří pera, který používá pozicování pole zadaná uživatelem.
Zakončení může být jedna z následujících hodnot:
PS_ENDCAP_ROUND jsou kulaté zakončení.
PS_ENDCAP_SQUARE jsou čtvercové zakončení.
PS_ENDCAP_FLAT zakončení jsou ploché.
Spojení může být jedna z následujících hodnot:
PS_JOIN_BEVEL jsou zkosené spojení.
PS_JOIN_MITER jsou mitered spojení, pokud jsou v rámci aktuální mezní SetMiterLimit funkce.Pokud spojení toto omezení překračuje, je zkosený.
PS_JOIN_ROUND jsou kulaté spojení.
nWidth
Určuje šířku pera.První verze konstruktoru Pokud je hodnota 0, šířka v jednotkách zařízení je vždy 1 obrazový bod, bez ohledu na režim mapování.
Druhá verze konstruktoru Pokud nPenStyle je PS_GEOMETRIC, šířka je uveden v logické jednotky.Pokud nPenStyle je PS_COSMETIC, šířka musí být nastavena na 1.
crColor
Barva RGB pro pero obsahuje.pLogBrush
Odkazuje LOGBRUSH struktury.Pokud nPenStyle je PS_COSMETIC, lbColor člena LOGBRUSH struktura Určuje barvu pera a lbStyle člena LOGBRUSH struktury musí být nastavena na BS_SOLID.Pokud nPenStyle je PS_GEOMETRIC, k určit atributy stopa pera musí být použity všechny členy.nStyleCount
Určuje délku v jednotkách doubleword lpStyle pole.Tato hodnota musí být nula Pokud nPenStyle není PS_USERSTYLE.lpStyle
Body na matici hodnot doubleword.První hodnota určuje délku první pomlčkou v uživatelem definovaný styl, druhá hodnota určuje délku první místo atd.Tento ukazatel musí být NULL Pokud nPenStyle není PS_USERSTYLE.
Poznámky
Pokud používáte konstruktor bez argumentů, musíte inicializovat výsledný CPen objekt s CreatePen , CreatePenIndirect , nebo CreateStockObject funkce členů.
Pokud používáte konstruktor, který přebírá argumenty, žádné další inicializace je nezbytné.Konstruktor s argumenty může vyvolat výjimku, pokud došlo k chybám, zatímco budou vždy úspěšné konstruktor bez argumentů.
Příklad
// Create a solid red pen of width 2.
CPen myPen1(PS_SOLID, 2, RGB(255,0,0));
// Create a geometric pen.
LOGBRUSH logBrush;
logBrush.lbStyle = BS_SOLID;
logBrush.lbColor = RGB(0,255,0);
CPen myPen2(PS_DOT|PS_GEOMETRIC|PS_ENDCAP_ROUND, 2, &logBrush);
Požadavky
Záhlaví: afxwin.h