2012-03-31 5 views
0

검은 색 양식을 배경으로하고 모덜 양식을 소유자가 검은 색 양식으로 한 번에 하나씩 열 수 있습니까? 이 두 가지가 함께 주문을 유지하려면 (최소화되고 최대화 될 때) 모달 형식을 선택한 이유가 필요합니다.상위 양식이 배경 인 모달 양식

검은 색 배경이있는 간단한 기본 양식을 만들고 대화 형 (모달) 양식으로 양식을 열었습니다. 기본 폼은 나를 위해 검은 배경을 제공하고 모달 폼은 검정색 배경 앞에 남습니다. 그러나 새로운 양식을 열 때, 새로운 모달 양식의 소유자를 전술 한 검은 양식으로 설정할 수는 없습니다. 나는 블랙 폼 객체를 전달하고 이벤트를 아무 소용이없는 것으로 등록하려고 시도했다. 검은 형태임을 배경 및 모달 폼의 일련의 검은 형태의 방식으로 검은 색 하나의 앞에 한 번에 하나의 오픈

:

당신은 다음과 같은 시나리오를 구현하는 어떤 메커니즘을 아십니까 모든 모달 형식의 소유자.

감사

편집

이 시나리오를 고려하십시오 : 나는 frmBlack라는 이름의 3 개 형태 Form1에Form2를 있습니다. 나는 frmBlack주된 검은 색 형태으로 사용합니다. 이 양식에 단추를 배치 한 후 Form1Object.ShowDialog (this)를 호출합니다. 이제 세 번째 폼 (Form2)으로 이동한다고 가정합니다. [이것은 Form1Object를 닫아야 함을 의미합니다.] 두 번째 폼 (Form1)에 단추를 넣었습니다.이 단추를 누르면 Form1 개체를 닫고 네비게이션해야합니다 ShowDialog() 함수의 소유자를 frmBlack으로 설정해야하는 동안 Form2Object에 전달됩니다.

+1

훨씬 이해가되지 않습니다. 대신 Show (소유자)를 사용하십시오. –

+0

그것은 모달이되지 않습니다, 나는 함께 붙어 두 필요! 나중에 필요를 명확히하기 위해 간단한 데모를 시도해 볼 수 있습니다. –

+1

소유 된 넌 모달 창은 항상 소유자의 맨 위에 표시됩니다. 그것은 당신이 필요로하는만큼 끈적입니다. 소유자에게 제한된 * 것을 원하면 MDI가 필요합니다. –

답변

0

부모 또는 소유자? 그것은 차이입니다. 학부모는 MDI-Applications에서만 사용됩니다 (Luigi의 게시물 참조). 소유자는 ShowDialog(owningForm)으로 전화하여 설정할 수 있습니다.

달성하고자하는 목표는 무엇입니까?

HTH

마리오

+0

소유자가 내가 원하는 것입니다. 이 게시물에 명시된대로 MDI 양식을 그리는 데 참여하고 싶지 않습니다. http : //stackoverflow.com/questions/1190395/how-to-remove-gray-background-on-mdi-parent-form –

+0

To 당신이 ShowDialog에 대한 호출에서 소유자를 설정하기를 원하는 것을 얻으십시오 (이것은 배경 윈도우가 될 것입니다.) 내가 어떻게하는지. –

+0

제 의견을 참조하십시오 –

0

당신이 frmBlack 두 번째 버튼 포스트 팩 창에서 원하는 것을 달성하고 일을 할 수 있도록. frm1.btnShowNextForm에서 frm1을 닫아야하기 때문에 더 구체적으로 frmBlack 내에 플래그를 설정하십시오.

또한 Form.Owner

을 살펴 그렇게 frm1.buttonShowNextFormClicked()

{ 
    if (null != Owner) 
    { 
     FrmBlack frmBlackLocal = Owner as FrmBlack; 

     if (null != frmBlackLocal) 
     { 
     frmBlackLocal.NextAction = FrmBLack.NextActions.ShowForm2; //an enum 
     } 
    } 

    Close(); 
} 

및 frmBlack

{ 

    frm1.ShowDialog(this); 

    if (NextAction == NextActions.ShowForm2) 
    { 
     frm2.ShowDialog(this); 
    } 
} 

그런데 이러한 라인을 따라 뭔가는, 물론 그것은 (일부 브러시 업을 필요로 자신의 함수에서 다음 핸들러를 추출하는 것과 같지만 아이디어를 얻어야합니다.

그들이 ShowDialog를 (소유자)와 모달 만들기

HTH

마리오

관련 문제