【问题标题】:How to put a Windows UAC Shield overlay on a button using wxPython?如何使用 wxPython 在按钮上放置 Windows UAC Shield 覆盖?
【发布时间】:2011-03-07 01:02:20
【问题描述】:

我有一个按钮,它将启动需要 UAC 提升的进程。我想在按钮上显示 Windows UAC 屏蔽覆盖,如何在 wxPython 中执行此操作? 该应用程序只会在 Windows 上运行,所以我不必担心它无法在其他系统上运行。

编辑 2: 明白了:

BCM_SETSHIELD = 0x0000160C
btn_apply = wx.Button(self, wx.ID_APPLY, "Apply",
                      wx.DefaultPosition, wx.DefaultSize, 0)
response = win32gui.SendMessage(btn_apply.GetHandle(), BCM_SETSHIELD, None, True)

我在 wparam 中输入了 true,而不是 SendMessage 的 lparam,现在可以了。现在我只是想知道是否在 pywin32 的某个库中声明了 BCM_SETSHIELD,但如果必须,我可以自己声明常量。

【问题讨论】:

    标签: python button wxpython icons uac


    【解决方案1】:

    我不知道如何在 Python 中发送 Windows 消息,但我假设你知道。您需要以true 作为参数发送BCM_SETSHIELD。在 XP 及更早版本上将被忽略。还要确保按钮样式设置为 FlatStyle.System。 BCM_SETSHIELD的数值为0x0000160C。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-17
      • 1970-01-01
      • 2014-03-16
      • 2017-08-08
      • 1970-01-01
      • 2017-11-01
      相关资源
      最近更新 更多