找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1823|回复: 0

[求助] pyqt5 开发程序如何嵌入 win 桌面

1

主题

1

帖子

1

积分

贫民

积分
1
罗斯莱尔 发表于 2019-4-29 11:53:22 | 显示全部楼层 |阅读模式
萌新求助,怎么将 qt 应用程序嵌入到桌面中呢?就是按 win+D 应用程序会保留在桌面上。
之前搜了教程,c++ 的貌似可以使用 hwnd ,将qt的 hwnd 设置为桌面的hwnd的孩子。来嵌入到桌面中。但是并不能成功。
请问要怎么修改程序呢?
  1. from PyQt5 import QtWidgets, QtGui
  2. import win32gui
  3. import sys
  4. import ctypes

  5. app = QtWidgets.QApplication(sys.argv)
  6. w = QtWidgets.QDialog()


  7. winid=w.winId()
  8. b=win32gui.GetDesktopWindow()

  9. ctypes.pythonapi.PyCapsule_GetPointer.restype = ctypes.c_void_p
  10. ctypes.pythonapi.PyCapsule_GetPointer.argtypes = [ctypes.py_object, ctypes.c_char_p]
  11. handle = ctypes.pythonapi.PyCapsule_GetPointer(winid.ascapsule() , None)

  12. print(handle)
  13. print(b)
  14. win32gui.SetParent(handle, b)


  15. w.show()
  16. sys.exit(app.exec_())
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表