ひとりも見捨てないことを、あきらめない

学校教育、社会教育、数学、技術家庭科、Youtube、EdTech、ICT、プログラミング、その他

WM_COMMAND について 12/05 木

 アプリケーションを作っているときに、

  • ア、このメニューを選択したら、この動きをする。
  • イ、画面上のこのボタンを押したら、この動きをする。

のように、人間が行う操作は、あっちこっちになります。わたしは、今まで、こういう操作は、メニューのときはメニューで処理し、ボタンのときはボタンで処理し、という具合に、別々の場所で処理するもものだと思っていました。

 違ったんですねえ。

 メニューを選択すると、その結果、ある番号のコマンドが発行されます。ボタンを押すと、別の番号のコマンドが発行されます。人間が行う操作は、すべて「ある一定の番号のコマンド」という形でアプリケーションに渡されます。

 アプリケーションは、プログラムの中で「常にコマンドを監視している場所」というのがあって、そこでコマンドを受け取ると、その番号に対応する処理を行っていました。

 全部、ひとつの場所で一括して処理していました。

 なので、メニューでもボタンでもキーボードショートカットでも、同じ番号のコマンドが発行されれば同じ処理をします。

 なるほど、うまい作りだなあと感心した次第です。

f:id:takase_hiroyuki:20191123160855p:plain