win32con.DT的选项是什么?python for windows绘制文本

win32con.DT的选项是什么?python for windows绘制文本,python,winapi,pywin32,win32gui,drawtext,Python,Winapi,Pywin32,Win32gui,Drawtext,在python for windows中,我找不到用于绘制文本函数的不同选项。 我希望我正在绘制的文本位于屏幕的左下角,而不是顶部中间。 如果左下角不是一个选项,则是否可以使用底部中心 win32gui.DrawText(hdc, windowText, -1, rect, win32con.DT_CENTER | win32con.DT_VCENTER ) 有这样的选择吗 win32con.DT_LEFT | win32con.DT_BOTTOM ?

在python for windows中,我找不到用于绘制文本函数的不同选项。 我希望我正在绘制的文本位于屏幕的左下角,而不是顶部中间。 如果左下角不是一个选项,则是否可以使用底部中心

        win32gui.DrawText(hdc, windowText, -1, rect,
        win32con.DT_CENTER | win32con.DT_VCENTER
    )
有这样的选择吗

win32con.DT_LEFT | win32con.DT_BOTTOM
?


在Microsoft或python文档中,我无法在线找到有关此代码片段的任何相关信息。

您可以在Microsoft站点上查看有关相应WinAPI函数的详细文档:

:

参数

dtu底部

将文本对齐到矩形的底部。使用此值 仅使用
DT_单线

如上所述,
dtu-BOTTOM
仅在指定了
dtu-SINGLELINE
时才起作用。因此,您需要:

win32con.DT_LEFT | win32con.DT_BOTTOM | win32con.DT_SINGLELINE

注意,这不足以绘制多条和矩形底部对齐的直线。在这种情况下,使用
DT_CALCRECT
标志计算要绘制的文本的高度。然后根据计算出的矩形的高度偏移该矩形。例如:

textformat = win32con.DT_LEFT | win32con.DT_BOTTOM
calrect = win32gui.DrawText(hdc, text, -1, rect, textformat | win32con.DT_CALCRECT);

rect.top = rect.bottom - calcrect.bottom;
win32gui.DrawText(hDC, text, -1, rect, textformat)