3

AppKit を使用すると、Mac 上の Python プログラムで ObjectiveC クラスを使用できます。私は ObjectiveC にあまり詳しくありませんが、オーディオ プレーヤーを作成するために、AppKit を使用してNSSoundクラスにアクセスしたいと考えています。

プレーヤーは、現在のオーディオの再生が終了したときに、プレイリストから次のアイテムをロードするなどのアクションを実行する必要があります。その時に呼ばれるsound:didFinishPlaying:というメソッドがあるのか​​な。ドキュメントによると、このメソッド呼び出しを受け取るデリゲートを設定する必要があります。

誰かがそれを Python/AppKit に翻訳するのを手伝ってくれませんか? Python でデリゲートを実装し、didFinishPlaying 通知を受け取るにはどうすればよいですか?

4

1 に答える 1

4

PyObjC ベースの Cocoa/AppKit アプリケーションの開発を成功させるための最初のステップは、Objective-Cを学び、次にCocoaを学ぶことです。

2 番目のステップは、Python をやめて、アプリケーションに Objective-C だけを使用することです。

PyObjC (および MacRuby) は素晴らしいテクノロジですが、両方を成功させるには、システム フレームワークのパターンと API を理解する必要があります。 これには、単純なアプリを構築するのに十分な、Objective-C の実用的な知識が必要です。

さて、大規模な Python ライブラリ (たとえば Twisted) を統合する必要がある場合は、実装の主要言語として Python を使用するのが適切です。ただし、Objective-C と Cocoa API に関する十分な知識/快適な基盤が必要です。

于 2010-03-04T17:02:00.627 に答える