pyGtkを使用してPCをロックするアプリケーションを実行していますが、問題があります。[OK]ボタンをクリックすると、ボタンの機能がテキストボックスから時間を取得し、ウィンドウを非表示にしてしばらくスリープし、最後にbashコマンドを使用してPCをロックします。しかし、それはただ隠れません。
そしてここに完全なプログラムがあります
pyGtkを使用してPCをロックするアプリケーションを実行していますが、問題があります。[OK]ボタンをクリックすると、ボタンの機能がテキストボックスから時間を取得し、ウィンドウを非表示にしてしばらくスリープし、最後にbashコマンドを使用してPCをロックします。しかし、それはただ隠れません。
そしてここに完全なプログラムがあります
Ubuntu で Gnome を使用している場合
import os
os.system('gnome-screensaver-command –-lock')
メインクラスがスレッドになる理由はありますか? 通常のクラスにすると、デバッグがはるかに簡単になります。機能しない理由は、すべての gtk 関連が gtk スレッドで発生する必要があるためです。そのため、すべてのウィジェット メソッド呼び出しを次のように行いますgobject.idle_add(widget.method_name)
。パスワード ウィンドウを非表示にするには:gobject.idle_add(self.pwdWindow.hide)
import gobject
もちろん、最初にインストールする必要があります(最初にインストールする必要がある場合があります)。
編集:それがあなたの問題ではないと思います.どちらにしても私はあなたのプログラムをたくさん編集しました.ここに変更されたコードがあります.