문제

오류 조건이 탐지 될 때 모달 경고 대화 상자를 팝업하는 Delphi 2006 앱이 있습니다.오류 조건 검사가 유휴 핸들러에서 수행되므로 대화 상자가 다른 모달 대화 상자의 맨 위에 올려 놓을 수 있습니다.이는 경고 대화 상자가 다른 모호한 모달 대화 상자가 있기 때문에 응용 프로그램 기본 양식이 초점을 맞추지 않는 사용자가 혼란스러운 상황을 초래할 수 있습니다.

내가하고 싶은 것은 앱에 모달 대화 상자가 열려있는 동안 경고 팝업을 연기하는 것입니다.

나는 getLastactivePopup (mymainwindow.handle)을 시도했지만 항상 0이 아닌 것처럼 보입니다.

도움이 되었습니까?

다른 팁

그냥 테스트

if not IsWindowEnabled(MyMainWindow.Handle) then
.

이것은 비 델파이 대화 상자가 windows.MessageBox(Handle...와 같이 모달 작동하는 경우 상황을 처리합니다.또는 공통 대화 (즉, topendialog)를 보이고있다.

anypopup () 함수

소개 getLastactivePopup ().반환 값은

에있을 때 hwnd 매개 변수와 동일 할 수 있습니다.

  • HWND로 식별 된 창은 가장 최근에 활성이었습니다.
  • hwnd로 식별 된 창은 팝업 창을 소유하지 않습니다.
  • 창은 HWND가 최상위 창이 아니거나 다른 창에서 소유하는 것이 아닙니다.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top