2010-07-21 2 views

답변

1

WS_DLGFRAME 창 스타일은 제목 표시 줄이없는 창을 제공해야하며 WS_EX_TOOLWINDOW는 일반적으로 이와 같은 창에도 사용되므로 작업 표시 줄에 표시되지 않습니다 (또는 Vista 이전의 제어판 대화 상자와 같은 숨겨진 부모 창 사용). Spy ++ (Visual Studio) 또는 WinSpy++

+0

나는 Tkinter에서 작동하지 않을 것 같은데, 그 작은 비트는 어떻게 구현 된 것일까 요? – rectangletangle

+0

@ anteater7171 : http://www.pythonware.com/library/tkinter/introduction/x9843-style-methods.htm 제목 표시 줄과 테두리를 제거하는 overrideredirect 메서드를 문서화합니다. 부족할 경우 기본 창 스타일을 설정해야합니다 , 나는 Tkinter가 당신에게 저수준 접근의 종류를 제공하는지 확신하지 못한다. 그렇지 않다면, http://twapi.magicsplat.com/ui.html#set_window_style TCL 확장과 같은 것을 시도해 보라. – Anders

2

Tk와 같은 도구로 정확한 창 스타일을 파악할 수 있습니다. 따라서 Tkinter에는 모든 창 관리자 장식을 제거하는 명령이 있습니다. tkinter의이 명령은 최상위 윈도우의 "wm_overrideredirect"메소드입니다. 창 관리자 장식을 제거하려면 True 매개 변수를 전달하십시오. 그런 다음 원하는 테두리를 그릴 수 있습니다. 일반적으로 전체 창 위에 캔바스를 채우고 캔버스에 그리는 방법으로 나타낼 수 있습니다.

그러나 Mac에서이 기능을 실험하면 창은 제대로 표시되지만 초점을 맞추지는 못합니다. 아마도 이것은 Tkinter의 버그입니다. 나는 Tcl에서 동일한 코드로 같은 문제를 보지 못했다.

관련 문제