Hidden CView
Hi Everyone,
I am creating a hidden CHtmlView, just so I can print it's content. It
works perfectly, but I am bit uncomfortable with it. I have a feeling that
it's going to bite me later.
void LSActivityDoc::OnFilePrint()
{
//LSActivityPrintView inherits from CHtmlView
CRuntimeClass *pViewClass = RUNTIME_CLASS(LSActivityPrintView);
LSActivityPrintView * pView = (LSActivityPrintView
*)pViewClass->CreateObject();
CRect rect(0,0,0,0);
if (!pView->Create(NULL, NULL, WS_CHILD | WS_BORDER,
rect, ::AfxGetMainWnd(), (AFX_IDW_PANE_FIRST), NULL))
{
TRACE0( "Unable to create printing view\n" );
return;
}
pView->SendMessage(WM_INITIALUPDATE);
pView->Navigate2("www.yahoo.com");
while (pView->GetBusy())
{
//Yeild is simply a message pump.
((CLSEditorApp *)AfxGetApp())->Yeild();
}
pView->OnFilePrint();
//this is what I am uncomfortable about.
pView->DestroyWindow();
}
Since OnFilePrint returns immidately (brings up CPrintDialog, and then
prints) I am not sure if it is safe to call DestroyWindow as I am doing.
Any thoughts?
AliR.