[R] Building tkentry dynamicly

John Fox jfox at mcmaster.ca
Tue Mar 7 14:29:07 CET 2006


Dear Alexandre,

It is possible to do what you want. Take a look, for example, at the dialog
box produced by "Statistics -> Contingency tables -> Enter and analyze
two-way table" in the Rcmdr package. That dialog box is able to modify
itself and to keep variables for an arbitrary number of tkentry() boxes. It
does this by constructing names for the variables as text strings, and then
using assign() and eval() to set and retrieve values. (Perhaps there's a
more elegant way to do this.) The code for the function enterTable(), which
constructs this dialog, is in the file statistics-tables-menu.R in the Rcmdr
source package.

I hope this helps,
 John

--------------------------------
John Fox
Department of Sociology
McMaster University
Hamilton, Ontario
Canada L8S 4M4
905-525-9140x23604
http://socserv.mcmaster.ca/jfox 
-------------------------------- 

> -----Original Message-----
> From: r-help-bounces at stat.math.ethz.ch 
> [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of 
> a.menicacci at fr.fournierpharma.com
> Sent: Tuesday, March 07, 2006 7:06 AM
> To: r-help at stat.math.ethz.ch
> Subject: [R] Building tkentry dynamicly
> 
> 
> 
> 
> 
> 
> Dear R-users,
> 
> I would like to build N "tkentry" compounds in the same 
> window, with default text for each. As N is variable I need 
> to construct them in an iterative way :
> 
> 
> library(tcltk)
> 
> main<-tktoplevel()
> 
> tktitle(main)<-"My Tool"
> 
> filenames<-c("toto","tata","titi")
> N<-length(filenames)
> 
> for (i in 1: N) {
>       text<-tclVar(filenames[i])   # get a filename (string value)
>       textField<-tkentry(main,textvariable=text)  # build a text field
>       tkgrid(textField)
> }
> 
> The problem is : How to keep references for each tclVar 
> created, in order to acces to the text modifications 
> eventually done for each field ?
> 
> 
> Example :
> 
> (Embedded image moved to file: pic14771.jpg)           to
> (Embedded image moved to file: pic11538.jpg)
> 
> 
> Regards.
> 
> 
> 
> 
> 
> 
> 
> Alexandre MENICACCI
> Bioinformatics - FOURNIER PHARMA
> 50, rue de Dijon - 21121 Daix - FRANCE
> a.menicacci at fr.fournierpharma.com
> tél : 03.80.44.76.17




More information about the R-help mailing list