[R] tkfilefind in tcltk on Windows2000

Peter Dalgaard BSA p.dalgaard at biostat.ku.dk
Fri Sep 14 14:14:31 CEST 2001


Jonathan Marchini <marchini at stats.ox.ac.uk> writes:

> Hi,
> 
> The tkfilefind demo in the tcltk package doesn't seem to work for me in
> Windows2000.
> 
> The demo script uses tkfilefind(".") which doesn't display the parent
> directory so you can't browse around the whole drive.
> 
> Using tkfilefind() (which uses the default path getwd()) doesn't seem to
> work for me at all.
> 
> I also tried tkfilefind("/") which worked fine but then using
> 
> > a<-tkfilefind("/")
> > a
> [1] "//jm2.null.mc.img"
> > library(AnalyzeFMRI)
> > f.analyze.file.summary(a)
> 
> causes R to crash i.e. using "//jm2.null.mc.img" as a path to a file
> doesn't seem to work.
> 
> I found a way round it using
> 
> path<-getwd()
> if(.Platform$OS.type == "windows") {
> path<-paste(substring(getwd(),1,2),Platform()$file.sep,sep="")
> }
> 
> tkfilefind(path)
> 
> but this only allows you to access files on the drive of the working
> directory.
> 
> I also found a problem selecting a file when the path has spaces. IIt
> seems to return a vector of characters
>  
> > tkfilefind("C:/")
> [1] "C:/Program/Files" "/R/rw1031/FAQ"   
> 
> I was wondering if there was an easier way around these problems? I find
> the tkfilefind function very useful when writing small GUI's that
> read/write data from files.

Hmmm.... It is after all just a demo, intending to show how you might
communicate with a fairly complex Tcl module. It could well be the
case that the "hierarchy_dir" widget on which it builds has
shortcomings and you could go looking for another file selector
dialog. Or maybe you could take a closer look at the function and
modify it to suit your needs.

However, after poking around a bit, I'm 95% confident that what you
really want is tkcmd("tk_getOpenFile")...

-- 
   O__  ---- Peter Dalgaard             Blegdamsvej 3  
  c/ /'_ --- Dept. of Biostatistics     2200 Cph. N   
 (*) \(*) -- University of Copenhagen   Denmark      Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)             FAX: (+45) 35327907
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list