はじめに
ユーザ「なんか上手く動かんのやけど」
ワテ「何かメッセージでエラー出てなかったです??」
ユーザ「あー、読まんと閉じてもたわ」
というやり取りをやったことありませんか??
僕はかなりありますw
特に処理に時間がかかる系のスクリプトだと、
というカスタムダイアログを出して、ユーザに知らせたいけど、
その処理でエラーが出た時には
というカスタムダイアログを出しても
ユーザ「(完了のメッセージ出たわ)」
という認識で読まずに閉じられるんですよね。。。
別でログを落としても、ユーザが気付かずに先に進むことで、
リカバリーが大変になったりも。。。
なんせ、処理失敗したらその時に気付いて欲しい!
そのためには。。。文字を読まなくても、普段と違うのを感じれれば異常に気付く?と思い、
ダイアログを変えることにしました。
こんなダイアログ作りました。
もはや文字を読まなくても違いが分かりますよねw
このダイアログにしてからは、読まれないことはなくなり、
ユーザ「黄色いのでたんスけど、見てもらえません?」
と問い合わせが来て、傷が浅いうちに対応できるようになりました。
他にもこんなことできます。
- ボタンは3つまで表示可能。
- ダイアログのタイトルも書けます。
- もちろん文章の改行もOK。
- 戻り値で押下ボタンが分かります。
- ボタンラベルの変更
- デフォルトボタンの変更
(緊急の色がユーザがドキッっとしてしまうので、運用では使ってないです;)
使い方
Githubでサンプルファイルを公開してます。
ファイル名:CustomDialog.fmp12
FM16、FM17で動作確認をしています。
「testレイアウト」で、いろいろ遊んでみてください!
各ソリューションへ持っていく方法は、
「DispCustomDialog」スクリプトのヘッダコメントの、【その他】に記載しています。
(レイアウトのコピーがもうちょっと簡単になればな~~)
どのメッセージを出すか?文言はどうするか?は引数で指定します。
その際、カスタム関数「SetProperty」「GetProperty」を使用して、必要なものだけ引数に指定します。
上記カスタム関数の説明は、こちらの記事を参考くださいmm
最後に
入力フィールドが設定できないので、完全に標準のカスタムダイアログに置き換わる事はできませんが、
ちょっとでもユーザに優しくなれればと思いますー!