2013-07-08 5 views

답변

1

몇 가지 질문에서 빠져 나옵니다.

SUPER::EVENT OPEN()는 ItemChanged에서하지 라고하면 데이터 윈도우의 Open 이벤트를 호출하려고합니다.

저는 100 % 확실하지 않지만 완전히 다른 스크립트에서 한 스크립트의 조상을 호출하려고 할 때 문제가 발생했다고 확신합니다. 나는 문서를 가리킬 수 없다. 나는 경험있는 의혹에 그것을 위로 분필해야 할 것이다.

당신이 뭘하고 있는지 명확하게 알 수는 없지만 창 열기 (그리고 아래에서 다룰 것입니다)를 호출하고 창 열기 스크립트가 상위 스크립트를 확장하거나 명시 적으로 (위와 같이) 조상 스크립트는 명시 적으로 조상 스크립트를 호출하는 것은 불필요하며 잠재적으로 바람직하지 않은 것으로 생각됩니다. 쓰고있는 윈도우의 Open 스크립트를 호출하면됩니다.

이것은 전적으로 코드에 따라 다르지만 유지해야하는 수십 개의 시스템 중에서 은 절대 사용하지 않습니다.은 Windows의 Open 이벤트를 실행하면 "다시 시작"됩니다. 필자가 작업 한 대부분의 시스템은 이전 상태와 새로운 상태가 예기치 않게 혼합 될 수 있습니다. 또한,이 코드를 처음부터 코드화하여이 코드를 완벽하게 작동 시키더라도, 코드를 유지하기 위해 나온 다음 사람 (내가 추첨을하고 작은 남태평양 섬으로 은퇴했다)이 그는 자신이 일했던 다른 시스템을 기반으로 완벽한 감각을 갖췄지만 제 가정을 망칠 것입니다. I가 "다시 시작"창을 필요한 경우, 나는 것 중 하나

  • 창을 닫고 오픈()합니다 (기능가 아닌 경우) 다시 윈도우의
  • 이 ue_ResetWindow 이벤트를 만들고 게시 , 잘하면 오픈이 그것을 사용할 수 있도록 코드를 작성 했으므로 창에 추가 된 모든 것이이 스크립트에서도 유지되어야한다는 것을 분명히했습니다.

(두 가지 중에서 후자는 훨씬 더 나은 사용자입니다. 경험 및 코딩, IMHO)

행운을 빕니다,

테리.

+1

SUPER :: 키워드를 사용하여 상위 스크립트를 호출하는 것을 제외하고 일반적으로 코드에서 내장 이벤트를 호출하는 것은 좋지 않습니다. 프레임 워크 코드를 우회 할 수 있기 때문에 용의자입니다. 상단에'//OVERRIDES ANCESTOR'를 가진 조상을 오버라이드하는 모든 이벤트 스크립트를 표시합니다. 예를 들어 전화하는 코드 'cb_1.clicked'는 여기서 피어 리뷰를 통과하지 못합니다. –

+0

휴 (Hugh)는 좋은 말을합니다. 그 말은 보통 취미 생활 중 하나입니다.하지만 이번에는 그것을 무시했습니다.오늘날 Open 이벤트에있는 모든 로직을 호출해야한다고 생각할 수도 있지만 다음 달에는 다른 누군가가 독점적으로 호출되어야하는 무언가와 함께 할 것입니다. 직원은 코드를 유지하기 위해 농구 (예 : 깃발 세우기)를 뛰어 넘을 것입니다. 지금부터 해체하고, 두 곳에서 전화하고, 장기간 자신을 구하십시오. – Terry