2012-05-22 6 views
0

저는 프로젝트 작업을하고 있습니다. 내가하고 싶었던 첫 번째 단계는 창을 만드는 것입니다. 나중에 채울 생각이었습니다.ShowWindow가 표시되지 않습니다.

IntPtr newWindow = CreateWindowEx(WindowStylesEx.WS_EX_OVERLAPPEDWINDOW, "HelloWin", "New Window", WindowStyles.WS_OVERLAPPEDWINDOW, 0, 0, 100, 100, IntPtr.Zero, IntPtr.Zero, hInstance,IntPtr.Zero); 

을 그리고이 ShowWindow 사용하여 보여줍니다 : 나는이 두 방법 사이에 할 잊고 아무것도

ShowWindow(newWindow, ShowWindowCommands.Normal); 

거기를 내가 그것을 만들 CreateWindowEx 함수를 사용할 수 있습니까? 나는 어떤 오류도 발생하지 않고 설정 한 다른 모든 것들이 실행 중이고, 창문이 갑자기 나타나지 않습니다. 감사!

+0

창을 만든 동일한 스레드에서 메시지 루프를 실행하고 있습니까? –

+0

또한 윈도우가 올바르게 생성되었는지 확인 했습니까? newWindow가 NULL/0이 아닌지 확인 했습니까? Spy ++에서 볼 수 있습니까? – BrendanMcK

+0

newWindow는 0입니다. 지금 그 작업을 진행할 예정입니다. 왜 그런 일이 일어나고 있는지 확실하지 않습니다. 부모 또는 메뉴가 0이 아니어야 할 가능성이 있습니까? –

답변

1

나는이 문제가 ShowWindow 다음에 UpdateWindow를 호출하지 않는다고 생각한다. 하지만 순수한 win32 API 만 .Net에서 작업하지는 않습니다. :-)

+0

C로 원시 Win32 API를 사용하는 경우에도 'ShowWindow'를 호출 한 후 명시 적으로 'UpdateWindow'를 호출 할 필요가 없습니다. – jamesdlin

+0

내 잘못 :-(저주받은 .NET :-) – Xearinox

관련 문제