Q&A

  • 판넬을 열었을때 다이얼 로그처럼 판넬이외의 버튼들은 동작 않도록 하려면....
판넬을 숨겨놓고 다이얼로그처럼 사용하려고 합니다.
헌데. 판넬을 show 하구나서. 판넬 이외의 다른 버튼들이 컨트롤되고 key 이벤트 등이 동작해서
작업이 애메하게 되버렸네요...


다이얼로그를 열면  키입력이벤트나 다이얼로그 이외의 버튼들은 동작을 하지 않는데..
판넬을 다이얼로그처럼 사용하는 간단한 방법 없을까요?

일일이 버튼이나 키이벤트를 disable 시키는건 좀 그래서요..

오늘도 고수님들 찾아봅니다.

만수무강!! 로또당첨!!
1  COMMENTS
  • Profile
    장성호 2008.01.22 22:02
    Panel을 Dialog처럼?

    Panel은 Form이 아니기 때문에 독립적으로 Show될수는 없습니다.
    그냥 폼 하나 만들어서 .... ShowModal로 Show하는 방법이 일반적이구요

    만약 원하시는것이
    기존에 폼위에서 Panel이 Show되었다가  Hide되도록 하는데..
    Panel이 Show된상태에서 Form위에 다른 Control이 모두 Disable되게 하려면 이죠?

    방법1.
       Dialog-Panel을 이왜의 모든 Control을 다른 Panel(Control-Panel)위에 올리시구요
      
       Dialog-Panel.Visible=true; 할때
       Control-Panel.Enable:=false;


       Dialog-Panel.Visible=false; 할때
       Control-Panel.Enable:=true;
      
       이런식으로 하는 방법이 있겠구요

    방법2.
       폼위에 control을 일일이 enable:=false하는 방법이 있습니다.
      
       일일이라고 하지만 Form 에는 Controls라는 것이 있기때문에
       for문 돌리면 됩니다.
       for문돌리면서 Dialog-Panel만 enabled속성이 아닌 visible속성을 건드려주면 되겠죠

    그럼..