为什么CDC :: IsPrinting()从CPrintDialog :: GetPrinterDC()返回FALSE?

时间:2018-04-12 13:29:10

标签: visual-c++ mfc

我正在使用

  

的CPrintDialog

设置打印机参数,我使用GetPrinterDC()方法获得DC。

.social a {
    display:inline-block;
    font-family: "FontAwesome";
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    line-height: 0;
    width: 20px;
    position: relative;
    text-align: center;
    color: white;
    top: 62px;
    left: 25%;
    font-size: 22px;
    padding: 20px;
    cursor: pointer;
    background-color: #2f5183;
    border-radius: 50% !important;
    transition: 0.3s;
    text-decoration: none;
}

在我的通用绘图功能中,我想知道的是DC用于打印。然后我调用方法IsPrinting()。

CPrintDialog pd ( TRUE , PD_RETURNDC );
if ( pd.DoModal () == IDOK )
{
    HDC hDC = pd.GetPrinterDC();
    CDC printDC;
    printDC.Attach ( hDC );

    /*...*/
}

当DC来自MFC的文档/视图架构时,IsPrinting()工作正常。来自CPrintDialog时它不起作用。为什么这个?有办法让它有效吗?我不想将额外的标志传递给我的绘图功能。

0 个答案:

没有答案