±Û²Ã ´ëÈ »óÀÚ¸¦ Ç¥½Ã ÇÏ´Â »ç¿ëÀÚ´Â ±Û²Ã Ư¼ºÀ» ¼±ÅÃÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â »ùÇà Äڵ忡 ¼³¸í ÇÕ´Ï´Ù. ¸ÕÀú CHOOSEFONT ±¸Á¶¸¦ ÃʱâÈ ÇÏ °í ´ëÈ »óÀÚ¸¦ Ç¥½Ã ÇÏ·Á¸é ChooseFont ÇÔ¼ö¸¦ È£Ãâ ÇÏ´Â »ùÇà ÄÚµå.
ÀÌ ¿¹Á¦¿¡¼´Â È¸é ±Û²Ã¸¸ ´ëÈ »óÀÚ¿¡ Ç¥½Ã µË´Ï´Ù ÁöÁ¤ ÇÏ·Á¸é CF_SCREENFONTS Ç÷¡±×¸¦ ¼³Á¤ ÇÕ´Ï´Ù. Ãë¼Ò¼±, ¹ØÁÙ ¹× »ö ¿É¼ÇÀ» ¼±Åà ÇÏ·Á¸é »ç¿ëÀÚ¸¦ Çã¿ë ÇÏ´Â ÄÁÆ®·ÑÀ» Ç¥½Ã ÇÏ·Á¸é CF_EFFECTS Ç÷¡±×¸¦ ¼³Á¤.
ChooseFont ³ªÅ¸³»´Â »ç¿ëÀÚ È®ÀÎ ¹öưÀ» Ŭ¸¯ Çϸé TRUE¸¦ ¹Ýȯ ÇÏ´Â °æ¿ì´Â LOGFONT ±¸Á¶ CHOOSEFONT ±¸Á¶Ã¼ÀÇ lpLogFont ¸â¹ö¿¡ ÀÇÇØ °¡¸®Å°´Â ±Û²Ã ¹× »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ ±Û²Ã Ư¼ºÀ» ¼³¸í ÇÏ´Â Á¤º¸°¡ µé¾î ÀÖ½À´Ï´Ù. RgbColors ¸â¹ö´Â ¼±ÅÃÇÑ ÅØ½ºÆ® »öÀ» Æ÷ÇÔÇÕ´Ï´Ù. ¼ÒÀ¯ÀÚ Ã¢¿¡ ¿¬°á µÈ ÀåÄ¡ ÄÁÅØ½ºÆ®¿¡ ´ë ÇÑ ±Û²Ã ¹× ÅØ½ºÆ® »ö»óÀ» ¼³Á¤ ÇÏ·Á¸éÀÌ Á¤º¸¸¦ »ç¿ë ÇÏ´Â »ùÇà ÄÚµå.
HWND hwnd; / / ¼ÒÀ¯ÀÚ Ã¢
HDC hdc; / / ¼ÒÀ¯ÀÚ Ã¢ ÀåÄ¡ ÄÁÅØ½ºÆ® µð½ºÇ÷¹ÀÌ
CHOOSEFONT cf; / / ÀÏ¹Ý ´ëÈ »óÀÚ ±¸Á¶
Á¤Àû LOGFONT lf; / / ³í¸® ±Û²Ã ±¸Á¶
Á¤Àû DWORD rgbCurrent; / / ÇöÀç ÅØ½ºÆ® »ö
HFONT hfont, hfontPrev;
DWORD rgbPrev;
/ / CHOOSEFONT ÃʱâÈ
ZeroMemory (amp; cf, sizeof(CHOOSEFONT));
cf.lStructSize = sizeof (CHOOSEFONT);
cf.hwndOwner = hwnd;
cf.lpLogFont = & lf;
cf.rgbColors = rgbCurrent;
cfÀÔ´Ï´Ù.Ç÷¡±× = CF_SCREENFONTS (ko) | CF_EFFECTS;
°æ¿ì (ChooseFont(&cf) = TRUE) {
hfont = CreateFontIndirect(cf.lpLogFont);
hfontPrev = SelectObject (hdc, hfont);
rgbCurrent = cf.rgbColors;
rgbPrev = SetTextColor (hdc, rgbCurrent);
.
.
.
}