2009-04-21 8 views
0

Mac OS Xでcmd + shift + 4キーを押すと、腐食しやすい座標が表示された画面上の領域を選択できます。私は自分のアプリケーションの1つでこのような関数を実装する必要があり、どのようにそれを行うのか分からない。誰かが私にそれに関するいくつかのアドバイスをくれますか?Mac OS Xデスクトップで領域を選択する

Thx。

+0

ネイティブCarbon/Cocoa APIをお探しですか? – dirkgently

+0

私はその機能を実装する方法を探しています...おそらく透過的なウィンドウを設定し、ユーザーのやりとりに応答できるビューを挿入すると...これは行く方法でしょうか?またはより良い解決策がありますか? –

答えて

1

これは通常、デスクトップスペース全体をカバーする半透明のオーバーレイウィンドウで行われます。

アップル社にはolder sample codeがあります。

+0

これは私が今やっている方法です:) –

2

このコードフラグメントは、特定の四角形のデスクトップに表示されているすべてを含むCGImageRefを返します。これにはApplicationServicesフレームワークが必要です。画面の座標は反転され、原点は画面の左上隅にあります。この場合、イメージ参照は発信者が所有し、発信者が終了するとCGImageReleaseで解放する必要があります。

#import <ApplicationServices/ApplicationServices.h> 

CGImageRef createScreenCapture(CGRect rect) { 
    CGImageRef image = CGWindowCreateImage(
         rect, 
         kCGWindowListOptionOnScreenOnly, 
         0, 
         kCGWindowImageDefault); 
    return image; 
} 
+0

10.5のみ、それは注目に値する。 – Chuck

+0

@チャック:ありがとう、間違いなく言及する価値がある! –

関連する問題