CRichEditView Printing issue in Vista.
I have a user who has changed his Vista Desktop Theme to something called,
"High Contrast Black".
1. Right-Click desktop | Personalize
2. Select Window Color and Appearance
3. Open classic appearance properties for more color options
4. Choose High Contrast Black.
In my application, I have a CRichEditView that I have implemented printing on.
Problem is, when they print out some text in this desktop theme, it
transfers that to the printout (white text on black background!).
I don't want the current desktop theme to affect the printed output. I
want my printouts to be black text on white paper regardless of what I set
my desktop theme to.
My code is based on the Wordpad example downloaded from here.
http://msdn2.microsoft.com/en-us/library/51y8h3tk(VS.80).aspx
You can reproduce the problem with this sample.
Any ideas on how to not use the Windows Themed background when printing to
the printer?
Here's a snippet of my code (not much to show really) also based on the
Wordpad sample that I'm including for thoroughness.
void CMyRichEditView::OnFilePrint()
{
m_bInPrint = TRUE;
CRichEditView::OnFilePrint();
m_bInPrint = FALSE;
}
void CMyRichEditView::OnPrint(CDC* pDC, CPrintInfo* pInfo)
{
CRichEditView::OnPrint(pDC, pInfo);
}
BOOL CMyRichEditView::OnPreparePrinting(CPrintInfo* pInfo)
{
return DoPreparePrinting(pInfo);
}
--
Leo Violette
Orrtax Software Solutions
www.orrtax.com