# Winモジュール

ウインドウに関する機能を提供するモジュール。
importしなくても使うことができる。

## メソッド

### find

ウインドウクラスやタイトルを指定して、条件に合致するウインドウを取得する。

    # ウインドウクラス名が"Notepad"のウインドウを得る
    w1 = win.find(class_name="Notepad")

    # タイトルが"Hoge"のウインドウを得る
    w2 = win.find(caption="Hoge")

#### 引数

- `class_name`(文字列)
  ウインドウクラス名。省略時はNone(文字列)

- `caption`(文字列)
  ウインドウタイトル。省略時はNone(文字列)

- `timeout`(数値)
  ウインドウが見つからなかった場合に見つかるまで待機する時間を秒単位で指定する。省略時は0.0

#### 戻り値

ウインドウオブジェクトが返る。
ウインドウが存在しない場合でもオブジェクトが返る。ウインドウの有無は戻り値で得たオブジェクトの`exists`プロパティで判断する。

ウインドウオブジェクトの提供するメソッドは下記の例を参照のこと

## Windowクラス

`win.find()`メソッドの戻り値で得られるオブジェクト。
対応するウインドウを操作する機能を提供する。

## プロパティ

### exists

ウインドウの有無を表すBool型の値

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    if w.exists:
        # ウインドウは存在する
        pass
    else:
        # ウインドウは存在しない
        pass

## メソッド

### maximize

ウインドウを最大化する。

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # 最大化
    w.maximize()

#### 引数

なし

#### 戻り値

- True: 成功

- False: 失敗

### minimize

ウインドウを最小化する。

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # 最小化
    w.minimize()

#### 引数

なし

#### 戻り値

- True: 成功

- False: 失敗

### restore

最大化/最小化状態にあるウインドウを通常表示の状態に戻す。

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # 通常表示にする
    w.restore()

#### 引数

なし

#### 戻り値

- True: 成功

- False: 失敗

### hide

ウインドウを非表示にする。

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # ウインドウを隠す
    w.hide()

#### 引数

なし

#### 戻り値

- True: 成功

- False: 失敗

### show

ウインドウを表示する。

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # ウインドウを表示
    w.show()

#### 引数

なし

#### 戻り値

- True: 成功

- False: 失敗

### activate

ウインドウを前面に出しフォーカスを設定する。

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # ウインドウを前面に出す
    w.activate()

#### 引数

なし

#### 戻り値

- True: 成功

- False: 失敗

### move

ウインドウを指定した座標値に移動する

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # 移動
    w.move(x=0, y=0)

#### 引数

- x(整数値)
  X座標値

- y(整数値)
  Y座標値

#### 戻り値

- True: 成功

- False: 失敗

### resize

ウインドウを指定したサイズに変更する

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # サイズ変更
    w.resize(width=250, height=200)

#### 引数

- width(整数値)
  ウインドウの幅

- height(整数値)
  ウインドウの高さ

#### 戻り値

- True: 成功

- False: 失敗

### setpos

ウインドウの移動とリサイズを同時に行う。

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # 移動とリサイズ
    w.setpos(x=100,y=100,width=400,height=200)

#### 引数

- insert_after
  Zオーダー変更用の引数。現在は非サポート。

- x(整数値)
  X座標値

- y(整数値)
  Y座標値

- width(整数値)
  ウインドウの幅

- height(整数値)
  ウインドウの高さ

#### 戻り値

- True: 成功

- False: 失敗

### click

ウインドウ上をクリックする

    # メモ帳のウインドウを得る
    w = win.find(class_name="Notepad")
    # クリック
    w.click(x=5, y=5)

#### 引数

- x(整数値)
  クリック位置を表すX座標値。ウインドウのクライアント領域座標単位で指定する。

- y(整数値)
  クリック位置を表すY座標値。ウインドウのクライアント領域座標単位で指定する。

#### 戻り値

- True: 成功

- False: 失敗