[R-gui] [R Gui]Moving thru fields
James Wettenhall
wettenhall at wehi.edu.au
Fri Apr 23 04:29:24 CEST 2004
On Thu, 22 Apr 2004, Erin Hodgess wrote:
> Hello again!
>
> I have several entry fields.
> I want to check each field as I go along
> Then I want to move to the next field.
> How to I move to the next field, please?
>
> Thanks so much!
>
> >From a sorely puzzled
> Erin
> mailto: hodgess at gator.uhd.edu
>
Erin,
It depends what you mean by next. If you mean next in the
tab-order (i.e. when the user presses the 'Tab' key), I don't
know how to do that. But it might help you to define a
list of tclVars and a list of widgets...
tclVarList <- list()
for (i in (1:NumEntryFields))
tclVarList[[i]] <- tclVar("Initial value")
EntryList <- list()
for (i in (1:NumEntryFields))
EntryList[[i]] <- tkentry(tt,textvariable=tclVarList[[i]])
Then moving to the next field as defined by the list shouldn't
be too hard...
What about assigning callback functions to a list of widgets?
Is it considered reasonable R coding style to have a list of
functions? I didn't think of this when I implemented a list of
widgets, so I did something like this:
for (i in (1:NumWidgets))
eval(parse(text=paste("onBrowse",i,
" <- function() {onBrowse(",i,",)}",sep="")))
tkentry(...,command=eval(parse(text=paste("onBrowse",i,sep=""))),...)
The idea is that (unless I'm mistaken), a Tcl callback function
for something like a button-press in R-Tcl/Tk shouldn't have any
arguments, so here I used a function onBrowse1() with no
arguments to call a function onBrowse(1), and onBrowse2() to
call onBrowse(2) etc. Does that make sense?
Regards,
James
--------------------------------------------------------------------------
James Wettenhall Tel: (+61 3) 9345 2629
Division of Genetics and Bioinformatics Fax: (+61 3) 9347 0852
The Walter & Eliza Hall Institute E-mail: wettenhall at wehi.edu.au
of Medical Research, Mobile: (+61 / 0 ) 438 527 921
1G Royal Parade,
Parkville, Vic 3050, Australia
http://www.wehi.edu.au
More information about the R-SIG-GUI
mailing list