2016-11-19 8 views
1

Python cursesでは、curses.newwin()関数を使って新しいウィンドウオブジェクトを作成できます。 newwin関数からインスタンス化されるオブジェクトのクラスを拡張するにはどうすればよいですか?Python cursesモジュールでクラスを拡張するには

私はdir(curses)を試しましたが、そこに明白なクラス名が見つかりませんでした。

答えて

1

curses.newwinは、拡張タイプを返します。

残念ながら、拡張機能の種類の属性を設定することはできません。それは `呪いを再定義しているようにそれは見えませんが、アイデアのための

orig_newwin = curses.newwin 
def newwin(*args): 
    win = orig_newwin(*args) 
    return Wrapper(win) 
curses.newwin = newwin 
+1

ありがとう:

回避策として、あなたは元curses.newwin(..)の戻り値をラップする新しいクラスのインスタンスを返すようにcurses.newwinを再定義することができます。あなたは* argsを中継してはいけませんか? –

+1

@HolyMackerel、申し訳ありませんが、私は最後の行を逃しました。その行をインクルードし、 '* args'をリレーするように答えを更新してください。 – falsetru

+0

クール、ありがとう:) –

関連する問題