私のプロジェクトは、Mac OS X 用のある種のタイミング アプリケーションであり、TimeCircle の drawRect で myView を更新したいと考えています。私は以前に同様の質問をしたことを知っています。しかし、私の問題はまだ解決されておらず、同様の他のトピックとは異なります。
私がこれまでに持っているもの:
タイマーを開始し、秒単位でいくつかの NSTextEdits を変更する NSObject クラス TimeController。
進行状況を表す時計のような針で円を描きたいカスタムビューに接続されているNSViewクラスTimeCircle。
TimeController.m にインポートされた TimeCircle.h
タイマーの実行中にメッセージを送信するインスタンス メソッド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];
}
人が仕事をしていて、人がしていない理由の手がかりはありますか?