2

メールのように NSTextField / NSTextView にデータ検出器を追加したい (例: 日付、電子メール、URL など)。

誰もこれを行う方法を知っていますか? TextEdit のソース コードで見た気がしますが、確認すると 2005 年のバージョンで、新しいソース コードが見つかりません。

アレックス

4

2 に答える 2

3

Snow Leopard では、IB インスペクターで適切なチェックボックスをクリックするだけで、NSTextView でデータ検出器を有効にできるようになりました。

于 2010-07-08T12:09:22.530 に答える
2

オブジェクトのフォーマッタ アウトレットを設定する必要があります。組み込みフォーマッターはNSDateFormatterNSNumberFormatterです。

代替テキスト

NSFormatterクラスを拡張することにより、カスタム フォーマッタを定義できます。Aaron Hillegassの優れた ' Cocoa Programming for Max OS X ' には、NSFormatters の作成に関する章があります。

テキストの本文内の日付、URL、電子メール アドレスなどを検出するには、Latent Semantic Mapping Frameworkを使用できます。これは Leopard の時点で公開されている API ですが、ドキュメントはあまり多くありません。lsmと呼ばれるコマンド ライン ツールもあり、使用するカスタム エクストラクタをテストできます。これは C API であり、私の知る限り Cocoa には統合されていないため、自分で接続する必要があります

于 2010-01-09T21:42:46.530 に答える