Click here to Skip to main content
15,887,746 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
QuestionGetting List of Specific Installed Programs Pin
AmbiguousName11-Sep-12 6:02
AmbiguousName11-Sep-12 6:02 
AnswerRe: Getting List of Specific Installed Programs Pin
Michael_Lu11-Sep-12 8:21
Michael_Lu11-Sep-12 8:21 
QuestionCan't select HBRUSH into device context Pin
Alan Balkany11-Sep-12 5:38
Alan Balkany11-Sep-12 5:38 
AnswerRe: Can't select HBRUSH into device context Pin
Jochen Arndt11-Sep-12 6:04
professionalJochen Arndt11-Sep-12 6:04 
GeneralRe: Can't select HBRUSH into device context Pin
Alan Balkany11-Sep-12 6:10
Alan Balkany11-Sep-12 6:10 
GeneralRe: Can't select HBRUSH into device context Pin
Jochen Arndt11-Sep-12 7:07
professionalJochen Arndt11-Sep-12 7:07 
GeneralRe: Can't select HBRUSH into device context Pin
Alan Balkany11-Sep-12 7:08
Alan Balkany11-Sep-12 7:08 
AnswerRe: Can't select HBRUSH into device context Pin
enhzflep11-Sep-12 10:20
enhzflep11-Sep-12 10:20 
Yeah, it shouldn't be a problem to do what you're asking for.
You need to make use of _both_ TextOut and Paths.

Basically, the process goes like this (sorry code is in a PDF ebook that prevents copy and paste)

1. Create your font
2. Select it into your hdc
3. Call BeginPath(hdc)
4. Call TextOut
5. Call EndPath
6. Use StrokePath for the outline, FillPath for the interior.
7. Select the old font back into the hdc
8. delete your font from #1

Ah! found a CHM version of the same book. Here's the code given there:
(I'll leave it as, unedited, for completeness)

void PaintRoutine (HWND hwnd, HDC hdc, int cxArea, int cyArea)
{
     static TCHAR szString [] = TEXT ("Filling") ;
     HFONT        hFont ;
     SIZE         size ;

     hFont = EzCreateFont (hdc, TEXT ("Times New Roman"), 1440, 0, 0, TRUE) ;

     SelectObject (hdc, hFont) ;
     SetBkMode (hdc, TRANSPARENT) ;

     GetTextExtentPoint32 (hdc, szString, lstrlen (szString), &size) ;

     BeginPath (hdc) ;
     TextOut (hdc, (cxArea - size.cx) / 2, (cyArea - size.cy) / 2,
                    szString, lstrlen (szString)) ;
     EndPath (hdc) ;

     SelectObject (hdc, CreateHatchBrush (HS_DIAGCROSS, RGB (255, 0, 0))) ;
     SetBkColor (hdc, RGB (0, 0, 255)) ;
     SetBkMode (hdc, OPAQUE) ;

     StrokeAndFillPath (hdc) ;

     DeleteObject (SelectObject (hdc, GetStockObject (WHITE_BRUSH))) ;
     SelectObject (hdc, GetStockObject (SYSTEM_FONT)) ;
     DeleteObject (hFont) ;
}

Make it work. Then do it better - Andrei Straut

GeneralRe: Can't select HBRUSH into device context Pin
Alan Balkany11-Sep-12 10:23
Alan Balkany11-Sep-12 10:23 
GeneralRe: Can't select HBRUSH into device context Pin
enhzflep11-Sep-12 10:30
enhzflep11-Sep-12 10:30 
GeneralRe: Can't select HBRUSH into device context Pin
Alan Balkany13-Sep-12 10:47
Alan Balkany13-Sep-12 10:47 
QuestionFile download help Pin
Sunil P V10-Sep-12 1:04
Sunil P V10-Sep-12 1:04 
QuestionRe: File download help Pin
David Crow10-Sep-12 2:38
David Crow10-Sep-12 2:38 
AnswerRe: File download help Pin
Sunil P V10-Sep-12 19:04
Sunil P V10-Sep-12 19:04 
GeneralRe: File download help Pin
_Flaviu10-Sep-12 21:01
_Flaviu10-Sep-12 21:01 
QuestionRe: File download help Pin
David Crow11-Sep-12 3:06
David Crow11-Sep-12 3:06 
QuestionHow to set Image' Document Size ? Pin
002comp9-Sep-12 22:18
002comp9-Sep-12 22:18 
AnswerRe: How to set Image' Document Size ? Pin
pasztorpisti9-Sep-12 23:10
pasztorpisti9-Sep-12 23:10 
GeneralRe: How to set Image' Document Size ? Pin
002comp9-Sep-12 23:32
002comp9-Sep-12 23:32 
GeneralRe: How to set Image' Document Size ? Pin
Chris Losinger10-Sep-12 1:11
professionalChris Losinger10-Sep-12 1:11 
QuestionHighlighting some text in CEdit Pin
Hadi Dayvary9-Sep-12 21:57
professionalHadi Dayvary9-Sep-12 21:57 
AnswerRe: Highlighting some text in CEdit Pin
_Flaviu10-Sep-12 19:31
_Flaviu10-Sep-12 19:31 
GeneralRe: Highlighting some text in CEdit Pin
Hadi Dayvary10-Sep-12 22:33
professionalHadi Dayvary10-Sep-12 22:33 
QuestionNON-SCALAR TYPE CONVERSION!? Pin
Jorgmen9-Sep-12 8:58
Jorgmen9-Sep-12 8:58 
AnswerRe: NON-SCALAR TYPE CONVERSION!? Pin
enhzflep9-Sep-12 9:40
enhzflep9-Sep-12 9:40 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.