カテゴリー別アーカイブ: 10.2. yesnoboxを使う

10.2. yesnoboxで動作を選択する

Pocket

10.2.1. yesnoboxの『これから』感

前回はmessageboxと呼ばれる、単純なOKボタンを押させるだけのGUIを表示させましたが、何かを選択したくなるのが人の常というものです。

そこで、今回はyesnoboxと呼ばれるボタンを表示させてみます。

 

10.2.1.1. yesnoboxとは

この画像の通り、yesnoboxはmessageboxと違って、ユーザが押すボタンが2つ存在します。

スクリーンショット 2014-12-05 12.57.15

2つ存在するということは、選択することができるということですので、選択に応じて分岐、つまり条件分岐に使えるボタンということになります。

今回は基礎編ということで、まずは「マクロを始めるか・始めないか」のyes/noを選択する仕組みを作ってみたいと思います。

 

10.2.1.2. yesnoboxの構文

yesnoboxはmessageboxと同じ構文で書くことができます。

 

ちなみに、上の画像はこういう書き方をしています。

 

messageboxとyesnoboxの違いは選択肢に応じて、”result”に0か1が格納されるということです。

これは、filereadlnでもう読み込むものがないときと全く同じ仕様ですので、その時に作ったif文と同じ形を使うことができます。

 

10.2.2. yesnoboxを実際に書いてみる

それでは、yesnoboxを実際に書いてみたいと思います。

 

10.2.2.1. yesnoboxでマクロの開始を判断させる

今回はマクロを開始するかしないかを判断するため、マクロの冒頭にyesnoboxを配置する必要があります。

yesnoboxのメッセージは特になんでもいいと思いますが、今回は以下のようにしておきたいと思います。

 

このコマンドの後ろでresultの判断をさせる必要があります。

コマンドリファレンスには

はいを押した時 =>1
いいえを押した時 =>0

がresultに格納されると書いてありますので、if文の書きっぷりとしては、こうなります。

 

 

102.2.2. マクロへの取り込み

では、yesnoboxをマクロの中に取り込んでいきます。

これで、マクロが開始された時に、以下のボックスが表示されます。

スクリーンショット 2014-12-05 15.26.56

はいを押した時 =>マクロが進行する
いいえを押した時 =>マクロが終了する

 

Pocket