一応、アイコン+アプリ名の横長版、アイコン+アイコンの下にアプリ名、アイコンのみ、という3つの表示方法を取れるようにしてみた。
書き散らかしの実験用プロジェクトなもので、クラス名がいちいちMyViewだったりCustumViewだったりするので(^^;)、その辺をすこし整理しながら書きなおそうと考えている。現在は
1,コントローラで起動中のアプリを調査して専用のクラスに入れて保持
2,それをもとに「アプリ1つを保持して表示するViewクラス」をインスタンス化
3,さらにそいつを「並べて表示する専用View」にaddSubview
という感じ。いろいろコードを書いては直し、直しては書き、としていると、コントローラはいらないな表示用のViewでデータを保持したほうがいいじゃん、とか、NSRunnnigApplicationクラスが作ってくれる「起動中アプリの一覧」Arrayをそのまま使ったほうがいいんじゃね?とか、アイディアだけは湧いてくるものだ。こうやってのめりこんでいくのが面白いんだなあ。
アプリを保持しているView(ちゃんとクラス名考えないとだめだな(^^;))はマウスのトラッキングとかもできるようにしてみた。xcatsan師匠のコードのカットアンドペーストだけど。
これでアイコンを左クリックすると、そのアプリがアクティブになる。
NSRunningApplication *selectApp=[NSRunningApplication runningApplicationWithProcessIdentifier:[_app _pid]]; [selectApp activateWithOptions:NSApplicationActivateIgnoringOtherApps];アプリケーションのpidをコピーしてあるので、これだけでアクティブにできる。おもしろー。
0 件のコメント:
コメントを投稿