2016-05-13 11 views
1

GUIを持つスクリプトがあります。このGUIには、ユーザーデータを取り込んでテキストファイルに格納します。それは別のスクリプト(.exe)を実行し、ユーザーの入力を待ってから何らかの作業を行います。私が望むのは、後者のスクリプトが、ユーザーからの入力を読み込んだ後にコンソールウィンドウを隠すことですが、バックグラウンドで作業を続けることです。入力を読み込んだ後にコンソールウィンドウを非表示にする

subprocess.call('lastscript.exe', shell=True)またはsubprocess.Popen('lastscript.exe', shell=True)でそのスクリプトを実行しようとしました。これは機能しません。ユーザーから最初にという入力を受け取り、コンソールを非表示にしてプログラムをバックグラウンドで動作させる必要があります。ここで

+0

あなたが入力用のTkウィンドウを使用して検討していますか? – R21

+0

@ R21 GUIにPyQt5を使用しています – GLHF

+0

lastscript.exeのソースを制御していますか?独自のコンソールウィンドウを簡単に隠すことができます。 – eryksun

答えて

2

は、PythonスクリプトでWindowsコンソールを非表示にするには、コードスニペットです:

import ctypes 

kernel32 = ctypes.WinDLL('kernel32') 
user32 = ctypes.WinDLL('user32') 

SW_HIDE = 0 

hWnd = kernel32.GetConsoleWindow() 
if hWnd: 
    user32.ShowWindow(hWnd, SW_HIDE) 
+0

これは私のサンプルスクリプトで動作します。私はメインスクリプトでそれを試してみますが、うまくいくと思います。答えをありがとう。 – GLHF

関連する問題