ボタンは常に押せる方がいいのか? それとも押せない時があってもいいのか? 答えはどちらも正解で、どちらも間違いだと思います。常に押せる時あれば、押せない時もあります。時と場合によってそれらを使い分ける必要があると思います。

常に押せる時

 では、どういう時に常に押せる方がいいのでしょうか。それには次のような事が考えられます。

  • 常に動作する
  • 動作するタイミングがわかりにくい

 常に動作する時とは、どのような状況においてもボタンの動作をさせる事が出来る時のことです。これには主に[キャンセル]ボタンなどが挙げられます。[キャンセル]ボタンは画面の状態にかかわらず、常に動作させる事ができます。

 動作するタイミングがわかりにくい時とは、ボタンの動作をするために条件があり、その条件がどうすれば整うのかがわかりにくい時のことです。こういう時には、動作する条件が整っていない場合にでも常にボタンを押せるようにしておきます。こうすることで条件が整っていない場合にボタンが押された時は、メッセージを表示して動作に必要な条件を教える事ができます。これには主に[OK]ボタンなどの確定や実行系の動作をするボタンが挙げられます。

押せない時

 押せない時には次のような事が考えられます。

  • 動作しない
  • 動作するタイミングが明確

 動作しない時とは、ウィザード形式の画面で最初のページを表示している時の[戻る]ボタンなどです。もし最初のページで[戻る]ボタンを押せてしまったら、まだ前のページがあるのではないか? というように、ユーザに誤解を与えてしまうかもしれません。ボタンを押せなくする事で、最初のページであると言う事を教える事が出来ます。

 動作するタイミングが明確な時とは、「動作するタイミングがわかりにくい」時の、動作するための条件が明確である時のことです。明確であるため、条件が整っていない状態でボタンが押せると、どういった動作になるのか予測ができなくなってしまいます。これはユーザに不快感を与えてしまうかもしれません。動作する条件が明確な時は、動作できない時にボタンを押せなくする事で、まだ条件が整っていない事をユーザに教える事が出来ます。

 ボタンが動作するための条件が明確か明確でないかの判断は、とても難しいと思います。動作する条件を明確にするために、ユーザインタフェースをわかりやすくし、無駄のない操作をさせることがユーザビリティの向上に繋がると思います。