タイトルは基本的に私の質問を要約しています。Mac Carbon SelectWindow と ActivateWindow(..., TRUE) の違いを知りたいです。私はこれらを古いソースで見つけましたが、それらが互換性があるかどうか (または、Cocoa に相当するものは何か) 疑問に思います。
2 に答える
Cocoa に相当するものを実際に知る必要はありません。やりたいことを特定する必要があるだけです。それらを実装する必要があった Carbon の多くのことは、AppKit によって行われます。Carbon API の他のパラダイムは、Cocoa では発生しません。それらは似ており、一般的な OS のものに似たフックがたくさんありますが、非常に異なっています。
記憶から…
SelectWindow は、ウィンドウをクリックしたときの応答でした。ウィンドウを前面に移動し、アクティブにし、(通常は) 最初のレスポンダーにしました。(ここでは Cocoa の用語を使用しています。)OrderFront
SelectWindow 関数は、以前にアクティブだったウィンドウから強調表示を削除し、指定されたウィンドウを前面に移動して強調表示し、アクティブ化イベントを生成して以前にアクティブだったウィンドウを非アクティブにし、指定したウィンドウをアクティブにします。指定したウィンドウが既にアクティブな場合、SelectWindow は無効です。カーソルが非アクティブなウィンドウのコンテンツ領域にあるときにユーザーがマウス ボタンを押すと、SelectWindow が呼び出されます。
ウィンドウをアクティブ化すると、ウィンドウ フレームが更新され、ウィンドウがファーストレスポンダであることを示しました。