2012-05-06 2 views
0

NSButton을 한 포인트에서 다른 포인트로 이동하기 위해 아래의 코드를 사용하지만, 나는 그것을 클릭 할 수 없다는 것을 의미합니다 (사용 불가).NSButton을 한 지점에서 다른 지점으로 CATransaction으로 이동합니다. 그러나 그 지점을 클릭 할 수 없습니다.

[CATransaction begin]; 
    [CATransaction setValue:[NSNumber numberWithFloat:1.0] forKey:kCATransactionAnimationDuration]; 
    btn.layer.frame=CGRectMake(200, 100, 48,48); 
    [CATransaction commit]; 
+0

버튼이 전환 이전되었습니다 영역을 클릭 할 수 있습니까? – dasblinkenlight

+0

버튼을 이동 한 후에도보기 영역을 모두 볼 수 없다. –

+0

이 코드를 윈도우의 버튼 하나로 테스트했는데 버튼이있는 영역을 클릭하면 버튼의 동작이 실행될 수있다. 그 자체가 사라진다). – rdelmar

답변

1

이 이동을하기 위해 CATransaction을 사용하는 이유가 있습니까? 이 한 줄로 단추 프레임을 변경할 수 있으며 모든 것이 잘 작동합니다.

[btn.animator setFrame : NSMakeRect (200, 100, 48,48)];

(내가 CATransaction 어떤 경험이없는, 그래서 작동하지 않는 이유는 말할 수 없다)

+0

감사합니다. 작동합니다. 그러나이 방법으로 우리는 움직이기위한 속도를 설정할 수 없습니다. 그렇게 할 수 있습니까? –

+0

예, 다음 행을 추가 할 수 있습니다. [[NSAnimationContext currentContext] setDuration : 2]; – rdelmar

관련 문제