John:

Thanks for your reply, I spent some time on this and the conclusion is 
it works:

top<- tktoplevel()
mainFrame <- tkcanvas(top)

both top and mainFrame can be used as parameters to pass to other 
function. The name, however, will conflict each other if they are 
defined in the same environment, which means if you have another top and 
mainFrame passed to another function, the GUIs will get to the same 
container. To avaoid this, better  use different name.

I wonder if there is a way for me to create an env and eliminate an env 
dynamically, I will try to get some information, but I definitely 
welcome some quick inputs...

Thanks
Hao


John Fox wrote:

>Dear Hao,
>
>You might take a look at how the Rcmdr package is implemented with many
>reusable elements. There is, for example, an initializeDialog function.
>
>I hope this helps,
> John
>
>--------------------------------
>John Fox, Professor
>Department of Sociology
>McMaster University
>Hamilton, Ontario
>Canada L8S 4M4
>905-525-9140x23604
>http://socserv.mcmaster.ca/jfox 
>-------------------------------- 
>
>  
>
>>-----Original Message-----
>>From: r-help-bounces@stat.math.ethz.ch 
>>[mailto:r-help-bounces@stat.math.ethz.ch] On Behalf Of Hao Liu
>>Sent: Wednesday, May 16, 2007 8:58 AM
>>To: r-help@stat.math.ethz.ch
>>Subject: [R] Is it possible to pass a Tcl/Tk component as 
>>argument to afunction
>>
>>hi! All:
>>
>>I wonder if someone has done this before...
>>
>>I am writing several functions that conduct statistical 
>>analysis using a GUI interface by Tcl/Tk, they share many 
>>identical GUI components. What I am trying to do now is to 
>>simplify the code by writing a GUI repository for all the 
>>components they use, thus save effort for code maintenance.
>>
>>Since they all use:
>>
>>mainFrame <- tkcanvas(top)
>>
>>--
>>
>>I wonder if I can write functions that take mainFrame as an 
>>argument, and call those functions from other place with 
>>initialized tkcanvas object. I did not see example like this 
>>and from my *limited* experience with tcltk, I found it 
>>always need something to be initialized before put to use, 
>>that makes me wonder if this idea will work... if it does 
>>not, any work arounds? like using Macro?
>>
>>Thanks
>>Hao
>>
>>	[[alternative HTML version deleted]]
>>
>>______________________________________________
>>R-help@stat.math.ethz.ch mailing list
>>https://stat.ethz.ch/mailman/listinfo/r-help
>>PLEASE do read the posting guide 
>>http://www.R-project.org/posting-guide.html
>>and provide commented, minimal, self-contained, reproducible code.
>>
>>    
>>
>
>
>  
>

	[[alternative HTML version deleted]]

