在Lotusscript中工作时,我希望我的用户无法通过按ctrl + p打印文档。取而代之的是,我提供了一个操作按钮,以便在打印文档之前执行一些额外的步骤。是否可以使用LotusScript或Java禁用直接打印(ctrl + p)。或者作为替代方案,有可能我们可以捕获ctrl + p事件,以便我们可以在进行实际打印之前添加代码。
我正在使用9.0.1FP8版
最佳答案
添加一个名为$ KeepPrivate的计算字段,其值为“ 1”。此字段阻止用户使用CTRL + P。
然后使用以下逻辑添加您自己的按钮:
Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Set uidoc = ws.CurrentDocument
Set doc = uidoc.Document
Call doc.RemoveItem("$KeepPrivate")
Call doc.Save(True,True)
doc.SaveOptions = "0"
Call uidoc.Close
Set uidoc = ws.EditDocument(True,doc,False)
Call uidoc.Print
Dim item As New NotesItem(doc,"$KeepPrivate","1")
Call uidoc.Save
Call doc.Save(True,True)
doc.SaveOptions = "0"
End Sub
此按钮将在后台更改$ KeepPrivate字段的值,并显示打印对话框。