0

私のプロジェクトは、Mac OS X 用のある種のタイミング アプリケーションであり、TimeCircle の drawRect で myView を更新したいと考えています。私は以前に同様の質問をしたことを知っています。しかし、私の問題はまだ解決されておらず、同様の他のトピックとは異なります。

私がこれまでに持っているもの:

  1. タイマーを開始し、秒単位でいくつかの NSTextEdits を変更する NSObject クラス TimeController。

  2. 進行状況を表す時計のような針で円を描きたいカスタムビューに接続されているNSViewクラスTimeCircle。

  3. TimeController.m にインポートされた TimeCircle.h

  4. タイマーの実行中にメッセージを送信するインスタンス メソッドdrawRectOutsideWrapper 。[TimeCircle drawRectOutsideWrapper:(float) 秒]; これは機能します。

drawRectOutsideWrapper は次のとおりです。

- (void) drawRectOutsideWrapper:(float) seconds {
   liveAngle= seconds;
   [self->myTimeCircleView setNeedsDisplay:YES];
}

drawRectOutsideWrapperはTimeControllerからのメッセージを正しく受け取ります!

問題は、[self->myTimeCircleView setNeedsDisplay:YES]; drawRectを起動しません。それは何もしません。テスト目的で、実際に同じことを行うスライダーmakeLiveLineを統合し、 drawRectが正しくトリガーされます。

- (IBAction)makeLiveLine:(id)sender {
   liveAngle= [sender intValue];
   [self->myTimeCircleView setNeedsDisplay:YES];
}

人が仕事をしていて、人がしていない理由の手がかりはありますか?

4

0 に答える 0