「Xamarin.MacでNSTextField内でリターンキーが押された際に処理をする」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
− | NSTextFieldで[[リターンキー]] | + | NSTextFieldで[[リターンキー]]が押された際に処理をしたいことも多いと思う。 |
− | + | [[キーボード]]と[[マウス]]をいったりきたりするUIとか止めてほしいと思っている人も多いはず。 | |
− | == 実装1 == | + | ちなみに[[Mac]]では宗教上の理由により[[キーボード]]のメイン部分にある大きいのが[[リターンキー]]で、[[テンキー]]に付いている小さいのが[[エンターキー]]と区別するらしぞ。 |
+ | |||
+ | ==実装1== | ||
リターンキーであれば何も考える必要はない。 | リターンキーであれば何も考える必要はない。 | ||
リターンキーが押されたり、フォーカスが外れたりすると以下のイベントが順番に発生する。イベント設定はどちらでもいいと思う。 | リターンキーが押されたり、フォーカスが外れたりすると以下のイベントが順番に発生する。イベント設定はどちらでもいいと思う。 | ||
18行目: | 20行目: | ||
</source> | </source> | ||
− | == 実装2 == | + | ==実装2== |
実装1はフォーカスが外れた際に問答無用で処理が走ってしまい微妙に不便だったりする。たとえば[[ウェブブラウザ]]の検索窓などでは[[リターンキー]]で検索を実行し、フォーカスがはずれただけの場合は何もしないというものが多い。これに対応するにはDoCommandBySelectorを使うとどういう理由で編集を終わろうとしているかを検出できるようだ<ref>https://github.com/xamarin/mac-samples/blob/master/SearchField/SearchFieldWindowController.cs</ref>。 | 実装1はフォーカスが外れた際に問答無用で処理が走ってしまい微妙に不便だったりする。たとえば[[ウェブブラウザ]]の検索窓などでは[[リターンキー]]で検索を実行し、フォーカスがはずれただけの場合は何もしないというものが多い。これに対応するにはDoCommandBySelectorを使うとどういう理由で編集を終わろうとしているかを検出できるようだ<ref>https://github.com/xamarin/mac-samples/blob/master/SearchField/SearchFieldWindowController.cs</ref>。 | ||
44行目: | 46行目: | ||
</source> | </source> | ||
− | == 関連項目 == | + | ==関連項目== |
− | |||
− | |||
− | |||
− | == 参考文献 == | + | ==参考文献== |
{{reflist}} | {{reflist}} | ||
+ | |||
+ | {{stub}} | ||
[[category:MonoMac]] | [[category:MonoMac]] | ||
− |