2011-01-10 3 views
3

이에 의해 윈도우의 X 버튼으로 명령을 결합 할 수 있습니다Tk에서 최대화 신호를 잡는 방법?

wm protocol $windowPath WM_DELETE_WINDOW $command 

어떻게 윈도우의 최대화 버튼을 위해 동일을 할 수 있습니까?

답변

2

표준 프로토콜이 X11 ICCCM set 또는 FreeDesktop set 사이에 없습니다. 따라서 wm protocol을 사용할 수 없습니다. 그러나 <Configure> 이벤트를 사용하여 모두 크기 변경을 추적 할 수 있습니다. 최상위에 설정하면 해당 창 내부의 모든 위젯에 대한 알림도 표시되므로 이벤트가 실제로 행동하기 전에 최상위 레벨인지 여부를 확인해야합니다 (예 :

bind $toplvl <Configure> { 
    if {"%W" eq [winfo toplevel "%W"]} { 
     ActOnResize %W %w %h [wm attributes %W -zoomed] 
    } 
} 
).

-fullscreen 속성을 확인할 수도 있습니다.