vba - getdevicecaps 函数的第二个参数的值是多少?

标签 vba excel excel-2007 excel-2010

我正在尝试获取事件打印机的物理边距。但我不确定应该为 GetDeviceCaps 函数的第二个参数指定什么值。有人可以告诉我可以设置多少 HORZSIZEVERTSIZE 值来获取实际的打印机值。

如果我使用 0 作为第二个参数的值,我得到的 getX 和 getY 值为 1024。有人可以帮助我吗?

注意: DefaultPrinterInfo 是一个用户定义的函数,用于获取驱动程序名称和打印机名称

Sub GetDevCaps()
    Dim str() As String
    Dim hdc As Long, delHdc As Long
    Dim getX As Long, getY As Long
    str = DefaultPrinterInfo
    hdc = CreateDC(str(1), str(0), 0, 0)
    getX = GetDeviceCaps(hdc, ?)
    getY = GetDeviceCaps(hdc, ?)
    delHdc = DeleteDC(hdc)<br>
End Sub

最佳答案

第二个参数表示要检索的信息。您可以在 MSDN 中找到常量和解释。文章。

您一直要求的常量:

Global Const HORZSIZE = 4
Global Const VERTSIZE = 6

关于vba - getdevicecaps 函数的第二个参数的值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16413544/

相关文章:

php - 如何每30条记录换行

excel - 使用 excel vba 从 Web 下载 zip 文件

c# - 使用图形和数据在 c# 中读取、添加和编辑 excel 以及

vba - 锁定空单元格并解锁空闲单元格

excel - 在 Excel 中将用户故事从一个 TFS 服务器迁移到另一个

vba - 在不同工作表中添加另一行时向表中添加新行

excel - 在 Excel 公式中插入换行符 (MacOS)

c# - 从 Excel 数据验证中删除帮助按钮

excel - 计算 Excel 字符串中单词的频率

excel - VBA 运行时错误...但我无法单击调试