OSX10.6에서 모노로 작업 중입니다.하지만이 질문은 코코아 전문가에게도 도움이됩니다.메인 스레드의 타이머가 울릴 때 코코아 컨텍스트 메뉴가 발생 함
NSTableView에 첨부 할 상황에 맞는 메뉴가 있습니다. 컨텍스트 메뉴를 선택하면 처리기 (테스트를 위해 비어 있음)는 ok라고하지만 응용 프로그램이 충돌합니다.
이 창 컨트롤러에서 내가 가지고있는 코드 :
...
myNSTableView.Menu = new NSMenu();
NSMenuItem mi = new NSMenuItem("menu item 1", myHandler);
myNSTableView.Menu.AddItem(mi);
...
public void myHandler(object Sender, EventArgs e)
{
}
나는 또한 최대한 빨리 상황에 맞는 메뉴에 액세스하려고으로 200ms마다
myNSTimer = NSTimer.CreateRepeatingScheduledTimer(new TimeSpan(2000000),delegate {
move an NSSlider
});
NSRunLoop.Main.AddTimer(myNSTimer, NSRunLoopMode.Common);
NSRunLoop.Main.AddTimer(myNSTimer, NSRunLoopMode.EventTracking);
을 반복하는 NSTimer의 설정을 가지고, 응용 프로그램이 매번 충돌합니다.
타이머를 시작하지 않으면 컨텍스트 메뉴가 정상입니다.
나는이 모든 것을 작동시키고 아이디어가 없어 졌기 때문에, 문제가있는 곳으로 포인터를 옮겨 주어야한다. 지금 당장 그 모노가 있다는 사실을 잊어 버리고 누구나 코코아 관점에서 문제를 볼 수 있습니까?