使用以下代码我可以顺利在Linux下打印:
op = gtk_print_operation_new();
gtk_print_operation_set_allow_async(op,TRUE);
gtk_print_operation_set_n_pages(op, 1);
gtk_print_operation_set_unit (op,GTK_UNIT_MM);
g_signal_connect (op, "draw_page", G_CALLBACK(draw_page), NULL);
gtk_print_operation_run (op, GTK_PRINT_OPERATION_ACTION_PRINT,NULL, NULL);
我的问题:当打印不成功时(例如因为没有配置打印机),没有调用draw_page()但我没有任何关于失败的反馈。那么:我该如何检查打印是否完成?
答案 0 :(得分:1)
怎么样?
void
gtk_print_operation_get_error (GtkPrintOperation *op,
GError **error);
当打印操作的结果为时,请调用此方法 GTK_PRINT_OPERATION_RESULT_ERROR,返回者 gtk_print_operation_run(),或在“完成”信号处理程序中。该 返回的GError将包含更多关于出错的详细信息。