情報科学屋さんを目指す人のメモ

方法・手順・解説を書き残すブログ。私と同じことを繰り返さずに済むように。

SetPoint拡張メモ:割り当て機能名が空欄になってしまう原因と対策

Logicool (14) SetPoint (11) Windows (497) トラックボール (17) マウス (7)

SetPointの拡張方法に従ってHandlerSetを書き換えていると、機能名が空欄の機能が機能一覧に現れる場合があります。この原因と対策についてメモします。

原因

これは、ボタンに割り当てるHandlerSetGroupの「HandlerSetNames」要素に列挙されているHandlerSetの書き方を間違えたときに発生します。もっと言えば、HandlerSetNameを間違えてしまっているとき、発生します。このとき機能名が空欄の機能は、存在しない機能という訳です。

対策

では、スペルミスなのかというと、そうとは限らないのがポイントです。実は、HandlerSetNamesでHandlerSetを列挙するときには、カンマの前後にスペースを入れてはいけないのです。これが原因になっている可能性が大きいと思われます。SetPointは、カンマの前後に挿入するスペースもHandlerSetの名前の一部であると認識してしまうようなのです。

そのため、無駄なスペースが入っていないか、また、HandlerSetの名前に元から入っているスペースを省略してしまっていないかを確認してください。

似たケース

空欄ではなく、HELP_などで始まる英数字になってしまう場合もありますが、これは、機能に対応するはずの機能の名前がString.xmlから取得できなかったことを意味します。該当する機能の機能名がちゃんとStrings.xmlで設定されているかどうか確認してみてください。

コメント(0)

新しいコメントを投稿