通知・エラー・確認・入力・選択画面の表示方法【Sikuli/Sikulix】

Sikuli/Sikulixでは、通知・エラー通知・確認・入力・選択画面を表示させたい場合、簡単にコード記載することができます。

それぞれの記載方法と表示例についてご説明します。

 

スポンサーリンク

 

通知画面

コード:popup(text[,title])

  test:メッセージとして表示させるテキスト

  title:タイトルとして表示させるテキスト

    (指定しない場合は「Sikuli Info」がデフォルト表示)

 

メッセージのみ指定する場合

上記の通知画面を表示させるためのコードは、下記となります。

通知画面のメッセージを”お知らせ画面”と指定しています。

#お知らせ画面 メッセージのみ指定
popup(u"お知らせ画面")

 

メッセージを複数行表示させる場合

上記の通知画面を表示させるためのコードは、下記となります。

通知画面のメッセージを複数行表示させたい場合、改行したいところに「\n(バックスラッシュn)」を記載します。

#お知らせ画面 メッセージを複数行表示させる場合
popup(u"お知らせ画面\n複数表示の場合")

 

メッセージ+タイトルを指定する場合

上記の通知画面を表示させるためのコードは、下記となります。

通知画面のメッセージを”お知らせ画面”、タイトルを”通知”に指定しています。

#お知らせ画面 メッセージ+タイトル指定
popup(u"お知らせ画面",u"通知")

 

エラー通知画面

コード:popError(text[,title])

  test:メッセージとして表示させるテキスト

  title:タイトルとして表示させるテキスト

    (指定しない場合は「Sikuli Error」がデフォルト表示)

 

上記のエラー通知画面を表示させるためのコードは、下記となります。

基本は通知画面と同様で、バツが表示されている画像が表示されるかされないかの違いとなります。

#エラー通知画面 メッセージを複数行表示させる場合
popError(u"エラーが発生しました\n確認してください")

タイトルも変更したい場合は、コードは下記となります。

#エラー通知画面 メッセージ+タイトル指定
popError(u"エラーが発生しました\n確認してください",u"エラー通知")

 

確認画面

コード:popAsk(text[,title])

  test:メッセージとして表示させるテキスト

  title:タイトルとして表示させるテキスト

    (指定しない場合は「Sikuli Decision」がデフォルト表示)

 

上記の画面を表示させるためのコードは、下記となります。

「はい」「いいえ」の確認を行う画面です。

「はい」が選択されると「TRUE」が、「いいえ」が選択されると「FALSE」が変数【answer】に入ります

「いいえ」が選択された場合、exit(1)とすることで、以降のコードは実行せず、プログラムを終了することができます。

#はい、いいえ確認画面
answer = popAsk(u"続けますか?")
if not answer:
    exit(1)

なお、タイトルも変更したい場合は、popup()と同様にメッセージの後ろにタイトルを指定してください。

 

入力画面

コード:input([msg][, default][, title][, hidden])

  msg:メッセージとして表示させるテキスト

  default:入力フィールドにあらかじめ表示させておきたいテキスト

  title:タイトルとして表示させるテキスト

    (指定しない場合は「Sikuli Input」がデフォルト表示)

  hidden:入力フィールドに入力する際の文字を隠すか否かの設定が可能

    (指定しない場合は「false」(隠さない)がデフォルト)

 

入力画面(1行)

上記の画面を表示させるためのコードは、下記となります。

「入力」を求める画面です。

入力がされて「OK」を押されると入力された値が、「取消」が押されたりダイアログが閉じられると「None」が変数【name】に入ります

#入力画面(1行)
name = input(u"ニックネームを入力してください","",u"入力フィールド")
if not name:
    exit(1)

 

入力画面(あらかじめ入力フィールドへ表示あり)

上記の画面を表示させるためのコードは、下記となります。

入力フィールドにあらかじめ「ナレッジタワー」が表示されます。

#入力画面(初期入力あり)
name2 = input(u"ニックネームを入力してください",u"ナレッジタワー",u"入力フィールド")
if not name2:
    exit(1)

 

入力画面(入力を隠す)

上記の画面を表示させるためのコードは、下記となります。

入力フィールドに入力した際、「●」が表示されて入力が隠されます。

#入力画面(入力が見えないタイプ)
password = input(u"パスワードを入力してください","",u"パスワード確認",hidden = True)
if not password:
    exit(1)

 

入力画面(複数行)

コード:inputText(msg[, title=””][, lines=][, width=][, text=””])

  msg:メッセージとして表示させるテキスト

  title:タイトルとして表示させるテキスト

    (指定しない場合は””とすると「SikuliX input request」がデフォルト表示)

  lines:入力フィールドの高さ

    (指定しない場合は「9」行がデフォルト)

  width:入力フィールドの横(文字数)

    (指定しない場合は「20」文字がデフォルト)

  text:入力フィールドにあらかじめ表示させておきたいテキスト

 

上記の画面を表示させるためのコードは、下記となります。

入力がされて「OK」を押されると入力された値が、「取消」が押されたりダイアログが閉じられると「None」が変数【content】に入ります

#入力画面(複数行)
content = inputText(u"内容を入力してください","",9,29)
popup(content)

 

リストから選択する画面

コード:select([msg][, title][, options][, default])

  msg:メッセージとして表示させるテキスト

  title:タイトルとして表示させるテキスト

    (指定しない場合は””とすると「Sikuli Selection」がデフォルト表示)

  options:テキストアイテムのリスト

  default:あらかじめセレクトしておくテキストアイテム

    (指定しない場合は一番前のテキストアイテムがデフォルト表示)

 

上記の画面を表示させるためのコードは、下記となります。

選択がされて「OK」を押すと選択されたアイテムが、変数【selected】に入ります

#リストから選択画面
items  = (u"選択してください",u"りんご",u"ぶどう",u"ばなな",u"もも")
selected = select(u"好きなフルーツを選択してください",options = items)
if selected == items[0]:
    popup(u"選択してください")
    exit(1)

 

ファイルを選択する画面

コード:popFile([title])

上記の画面を表示させるためのコードは、下記となります。

選択されたファイルまたはフォルダのパスが変数【file】に入ります

#任意のフォルダまたはファイル選択
file = popFile(u"ファイルを選択してください")

 

一定時間クリックされない場合に自動でポップアップを閉じる

ポップアップ表示後、一定時間経過してもクリックされない場合、自動的にポップアップを閉じることができます。

下記コードの場合、「3秒後に自動で閉じます」とのメッセージが表示されたポップアップを表示後、「OK」ボタンを押さずに3秒経過すると、

「自動で閉じました」とのポップアップが表示されます。

#選択されない場合自動で閉じる
auto = Do.popup(u"3秒後に自動で閉じます", 3)
if not auto:
    popup(u"自動で閉じました")

 

Sikuli関連記事はこちら

スポンサーリンク