0

私はPythonプログラムを作成し、py2exeを使用してWindows実行可能プログラムにしました。

プログラムが実行されると、ユーザーが対話するための疑似コマンド ウィンドウが開きます。(印刷とraw_inputを使用するだけ)

通常、win コマンド プロンプトでは、任意の場所を右クリックして貼り付けを実行できます。

しかし、この疑似コマンド ウィンドウではできません。タイトル バーを右クリックして、編集 -> 貼り付けに移動できますが、それは苦痛であり、ほとんどのユーザーはとにかくそれについて知りません。

この機能を追加したり、ctrl-v で直接貼り付けたりできるようにしたいです。

何か案は?

4

1 に答える 1

0

msvcrt モジュール (Windows のみ) を使用すると、ユーザー入力文字を char で取得できます (python とは異なり、「enter」なしraw_input) 。

import msvcrt

def inputemulator():
    buf = []
    while True:
        ch = msvcrt.getch()
        if ch=="\r": #newline
            yield ''.join(buf)
            buf = [] 
        elif ch=="\x03": #ctrl-c
            raise KeyboardInterrupt
        elif ch=="\x16": #ctrl-v, do paste, ...
            pass
        else:
            buf.append(ch)

for line in inputemulator():
    print line 
于 2013-03-17T08:26:22.163 に答える