鱼C论坛

 找回密码
 立即注册
查看: 9889|回复: 10

PyQt5——窗口置顶问题(未解决)

[复制链接]
发表于 2016-11-9 18:31:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
最近在弄pyqt5,使用到了要将隐藏到托盘的窗口重新激活并显示在Windows所有窗口的最上层,当我点击托盘图标的时候,窗口会显示出来,但一旦我把pycharm最小化之后,窗口就不能显示出来了,也就是说,脱离了pycharm把程序之后就无法实现这个效果了,下面是我的代码,我已经激活窗口又show了一遍,还把它raise了,就是不行,各位高手麻烦给我解答一下呗
这是点击关闭窗口的控件时候的处理代码
0.0.png
这是点击托盘图标之后要运行的代码
2.png
1.png
之后再找了一下资料,然后有人说要调用win32api来处理,如果要用,怎么用呢?高手给支个招谢谢


还有个问题就是,用pyinstaller打包程序的时候,总是出现一堆warning,大概是api-ms-win-crt...,然后找不到文件之类的,虽然程序可以运行,但在一些电脑上却会运行出错,不是说QT的跨平台性很好么,为什么还会这样。。。
后来找了资料,说要安装VC_redist64 / 86,我两个都装了2005到2015的都装了,但是还是出现这种情况,我后来修复了VC_redist,但还是没用,谁能给我解答呢?换一个打包程序的话太麻烦,尤其是CX_Freeze的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-11-9 20:03:14 | 显示全部楼层
@无符号整形

你怎么用pyinstaller打包的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-11-9 20:28:48 | 显示全部楼层
wei_Y 发表于 2016-11-9 20:03
@无符号整形

你怎么用pyinstaller打包的。

PyQt没玩过
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-11-9 21:47:27 | 显示全部楼层

win32 设置顶层窗口。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-11-9 21:51:12 | 显示全部楼层
wei_Y 发表于 2016-11-9 21:47
win32 设置顶层窗口。

用SetForegroundWindow
保管有效
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-9 22:07:29 | 显示全部楼层
无符号整形 发表于 2016-11-9 21:51
用SetForegroundWindow
保管有效

SetForegroundWindow是在哪里的呢?怎么调用?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-9 22:08:17 | 显示全部楼层
wei_Y 发表于 2016-11-9 21:47
win32 设置顶层窗口。

怎么设置呢?有代码吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-11-9 22:08:51 | 显示全部楼层
wei_Y 发表于 2016-11-9 20:03
@无符号整形

你怎么用pyinstaller打包的。

直接用pyinstaller打包的呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-11-10 07:04:59 | 显示全部楼层
-瑾- 发表于 2016-11-9 22:07
SetForegroundWindow是在哪里的呢?怎么调用?

win32 Api
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-7-28 19:32:09 | 显示全部楼层
为毛不用qtquick  还在用qtwidget...你还是弃坑吧  去学着用qml很方便
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-3 23:03:49 | 显示全部楼层
from PySide2.QtCore import Qt  # 导入Qt, 如果你不是PySide2, 换一下就好
# 然后把需要指定的窗口设置为置顶, 如下:
window.setWindowFlags(Qt.WindowStaysOnTopHint)

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 06:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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