먼저 대화 상자에 대해 이야기해 보겠습니다.
대화 상자는 Windows 응용 프로그램에서 매우 일반적으로 사용됩니다. 많은 응용 프로그램 설정 및 사용자와의 상호 작용에는 대화 상자가 필요하므로 대화 상자는 Windows 응용 프로그램에서 가장 중요합니다. 사용자와 상호작용하는 중요한 수단. 대화 상자는 특별한 창이므로 창에서 수행되는 모든 작업(예: 이동, 최대화, 최소화 등)도 대화 상자에서 수행할 수 있습니다.
대화 상자는 크게 다음 두 가지 유형으로 나눌 수 있습니다.
(1) 모달 대화 상자: 모달 대화 상자가 나타난 후에는 사용자가 대화 상자를 닫은 후에만 시스템 리소스를 독점적으로 점유할 수 있습니다. . 대화 상자를 닫기 전에 애플리케이션의 다른 부분에서 코드를 실행하는 기능. 모달 대화 상자에서는 일반적으로 사용자가 어떤 종류의 선택을 해야 합니다.
(2) 넌모달 대화 상자: 넌모달 대화 상자가 나타난 후 대화 상자를 닫지 않고도 프로그램을 계속 실행할 수 있으며, 다른 코드로 전송할 때 사용자는 아무것도 할 필요가 없습니다. 응용 프로그램의 일부가 응답합니다. 모덜리스 대화 상자는 일반적으로 정보를 표시하거나 실시간으로 일부 설정을 지정하는 데 사용됩니다.
모달 창은 전통적인 프로그래밍 언어에서 매우 일반적입니다. 간단히 말해서 모달인 경우 하위 창이 닫히지 않으면 해당 상위 창을 실행할 수 없으며 원래 프로그램 실행이 실행됩니다. 일시 중단되면 원래 프로그램으로 돌아가서 모달 창이 닫힐 때까지 계속합니다.
비모달이 직접 표시되고, 이후 원래 프로그램은 계속해서 다음 명령문을 실행하며, 다른 창도 사용할 수 있습니다.
모달 대화 상자는 사용자의 입력을 독점합니다. 모달 대화 상자가 열리면 사용자는 대화 상자와 상호 작용만 할 수 있으며 다른 사용자 인터페이스 개체는 입력 정보를 받을 수 없습니다. 응용 프로그램에서 사용하는 대부분의 대화 상자는 모달 대화 상자입니다.
일반적으로 windwo.open이나 브라우저의 하이퍼링크를 통해 나타나는 새 창은 비모달 창인 반면, 모달 창은 다른 이벤트에 응답하기 위해 닫아야 하는 경고와 같은 창입니다.
대화 상자의 모달리티와 넌모달리티를 이해하면서 다음을 살펴보겠습니다. B/s 구조 애플리케이션을 개발할 때 때때로 사용자가 원래 창 앞에 남아 있는 하위 창을 열도록 하고 싶습니다.
IE에서는 window.showModelessDialog() 메서드를 사용하여 HTML 콘텐츠를 표시하는 비모달 대화 상자를 만들 수 있습니다. window.showModalDialog() 메서드는 HTML 내용을 표시하는 모달 대화 상자를 만드는 데 사용됩니다. 대화 상자는 일반적으로 window.open()으로 열리는 창의 모든 속성을 갖고 있지 않습니다.
window.showModalDialog 팝업 창의 인스턴스 함수는 다음과 같습니다.