2011-03-16 6 views
3

TclTk는 R에서 잘 작동하고 있습니다. 창에 창 부품이 놓이는 것을 볼 수 있습니다. 창을 숨기고 창작 한 후에 만 ​​표시하는 방법이 있습니까? 다음을 R에 붙여 넣으면 창이 채워집니다. 그게 내가 사용자에게 (가능하다면) 보이기를 원하지 않는 것입니다. 감사.그려지는 동안 R에서 TclTk 창을 숨기는 방법

require(tcltk) 
dlg = tktoplevel() 
# command to hide window ? 
for (i in 1:10) { 
    l = list() 
    for (i in 1:20) l[[i]]=tkbutton(dlg,text="SO") 
    do.call(tkgrid,l) 
} 
# command to show window now it is built ? 
tkwait.window(dlg) 
tkdestroy(dlg) 

답변

4

나는 gWidgetstcltk에 다음과 같은 패턴을 가지고

library(tcltk) 
tclServiceMode(FALSE) 
win <- tktoplevel() 
tkwm.state(win,"withdrawn") 
tclServiceMode(TRUE) 

## ... do your thing then: 
tkwm.state(win,"normal") 
+1

감사합니다! tclServiceMode()는 완벽하게 작동하며 tkwm.state()를 호출 할 필요가 없습니다. 보너스로 윈도우도 즉시 나타납니다. 각 위젯이 추가 된 후 윈도우가 다시 그려지는 것은 TclTk 그 자체가 아니라 비싼 것입니다. –

2

당신은 단지 중괄호로 전체를 포장 할 수 있습니다. 지금까지 저에게 도움이되었습니다. 같은

뭔가 :

{ # Begin building window 
    (code) 
} # End building window 
+0

감사합니다. 다음에 내가해야 할 일은 분명히 해줄거야. –

관련 문제