3

アプリケーションに設定パネルがあり、NSColorWell背景色を設定するためのパネルとNSFontPanel、フォントを選択するためのボタンがあります。

私がしたい動作は次のとおりです。

  • NSColorWellパネル内のある色をクリックしてドラッグすると、ドラッグ時に「プレビュー」領域の背景色が変更されます。

  • [フォントの変更...]ボタンをクリックすると、フォントが表示NSFontPanelされ、フォントを選択すると、[プレビュー]領域でもフォントが変更されます。のカラーボタンをクリックすると、フォントNSFontPanelの色を変更したいとします。

本質的に、私は両方のカラーパネルを独立して機能させようとしています(私が見たものから、アプリごとに共有パネルは実際には1つしかありません)。

今、フォントとカラーパネルを開いたとしましょう。ウィンドウのカラーウェルをクリックするとアクティブになります。フォントパネルのカラーボタンをクリックすると、カラーウェルがアクティブのままで、色の変更に登録したため、色はフォントではなく背景に影響します。コントローラクラスの通知。

誰かが私にこの種の振る舞いをコーディングする特定の方法の例を教えてもらえますか?パネル自体からのイベントを処理する方法(通知?デリゲート(または)?コントローラーをレスポンダーに挿入する)だけでなく、を作成しNSFontPanelNSColorPanel表示する(NSFontPanelまたは?)さまざまな方法があるようです。鎖?)。一度に複数のカラーソースを処理する理想的な方法に関するガイドラインが見つからず、少し迷っています。NSFontManagerNSFontManagerNSFontPanel

前もって感謝します!

4

1 に答える 1

2

カラー ピッカー メカニズムは、複数のカラー ウェルを「アクティブ化」し、それらのカラーを同時に設定できるように特別に設計されています。フォントパネルのカラーボタンがカラーピッカーを「離さない」理由は、実際には「カラーウェル」ではないからだと思います。この動作に直接気づいたことはありませんが、カラー ウェルと標準のテキスト ビューを備えた単純な新しい xib で簡単に再現できます。

基本的に、ウェルとフォントの色の両方をクリックすると、ウェルと選択したテキストの両方が選択した色に変わります。ウェルをオフにすることもでき、テキストのみが変更されます。ただし、フォント パネルを閉じるまで、フォント パネルをカラー ピッカーから「放す」ことはできません。

私はこれをバグと呼んでいます: http://bugreport.apple.com

于 2009-11-03T16:03:48.840 に答える