如何从UIPrintInteractionController禁用取消按钮

时间:2018-06-23 14:27:08

标签: c++ ios objective-c qt printing

我有一个用C ++为iPad开发的Qt应用程序,该应用程序有时需要打印内容。为了进行打印,我调用了Objective-C和C ++代码的以下组合:

  void PrinterManagerImpl::print(const QString& a_PathToImg)
  {
    setPrintInfo();

    auto imgUrl([NSURL fileURLWithPath:a_PathToImg.toNSString()]);
    auto canPrint([UIPrintInteractionController canPrintURL: imgUrl]);

    auto controller = [UIPrintInteractionController sharedPrintController];
    if(controller && canPrint)
    {
      controller.printInfo = m_PrintInfo;
      [m_Renderer setImgPath: a_PathToImg.toNSString()];
      controller.printPageRenderer = m_Renderer;

      qInfo() << "Printing image located at <" << QUrl::fromNSURL(imgUrl) << ">";
      [controller printToPrinter: m_Printer
                  completionHandler: ^(UIPrintInteractionController* /*printCtrl*/, BOOL completed, NSError* err)
      {
        if(completed && !err)
        {
          qInfo() << "Print successful"; 
        }
      }];
    }
}

我不得不使用该UIPrintInteractionController hack,因为QPrinter在iOS下不起作用。

现在,我的问题是在打印时出现一个对话框,指出该应用程序正在连接到打印机并想要打印。在该对话框上,有一个我想禁用的取消按钮。我该如何实现?

谢谢!

0 个答案:

没有答案