在Ubuntu上用Python锁定电脑

2 投票
2 回答
735 浏览
提问于 2025-04-15 14:03

我正在做一个应用程序,用pyGtk来锁定电脑,但我遇到了一个问题。当我点击“确定”按钮时,这个按钮的功能应该是从文本框获取时间,然后隐藏窗口,接着休眠一段时间,最后通过一个bash命令来锁定电脑。但它就是不隐藏窗口。

这是完整的程序

2 个回答

1

主类为什么要用线程呢?我觉得用普通类就好,这样调试起来简单多了。之所以不工作,是因为所有跟gtk相关的操作必须在gtk线程里进行,所以所有的控件方法调用都得这样写:gobject.idle_add(widget.method_name)。比如要隐藏密码窗口,就得这样:gobject.idle_add(self.pwdWindow.hide)

当然,你得先import gobject(可能还需要先安装它)。

编辑:我觉得这不是你的问题,不管怎样,我对你的程序做了很多修改,这里是修改后的代码

3

前提是你在使用Ubuntu的Gnome桌面环境

import os

os.system('gnome-screensaver-command –-lock')

撰写回答