相关疑难解决方法(0)

从tcltk函数中获取数据

这可能是如此简单,当答案回来时我会畏缩但我完全难过.我已经尝试过手册,尝试搜索网页,各种示例以及我能想到的任何其他内容.我仍然被困住了.

我正在尝试为用户创建一个简单的输入,以添加两个值,然后我可以在R脚本的其余部分中使用这些值.我需要脚本暂停并等待来自用户的输入,然后在获得输入后继续(就像选择文件函数的工作原理一样).在阅读了一堆东西之后我决定使用库(tcltk).我在一个函数中有一个漂亮的小盒子.

inputs <- function(){

   xvar <- tclVar("")
   yvar <- tclVar("")

   tt <- tktoplevel()
   tkwm.title(tt,"Input Numbers")
   x.entry <- tkentry(tt, textvariable=xvar)
   y.entry <- tkentry(tt, textvariable=yvar)

   reset <- function()
    {
     tclvalue(xvar)<-""
     tclvalue(yvar)<-""
    }

   reset.but <- tkbutton(tt, text="Reset", command=reset)

   submit <- function() {
     x <- as.numeric(tclvalue(xvar))
     y <- as.numeric(tclvalue(yvar))
     print(x)
     print(y)
     tkdestroy(tt)
   }
   submit.but <- tkbutton(tt, text="submit", command=submit)

   tkgrid(tklabel(tt,text="Enter Two Inputs"),columnspan=2)
   tkgrid(tklabel(tt,text="Input1"), x.entry, pady = 10, padx =10)
   tkgrid(tklabel(tt,text="Input2"), y.entry, pady = 10, padx =10)
   tkgrid(submit.but, reset.but)

  }
Run Code Online (Sandbox Code Playgroud)

当我输入时:

 inputs()
Run Code Online (Sandbox Code Playgroud)

弹出漂亮的小方框,我可以输入我的值,例如3和4.

我回来了

<Tcl> …
Run Code Online (Sandbox Code Playgroud)

tk-toolkit r

5
推荐指数
1
解决办法
2816
查看次数

标签 统计

r ×1

tk-toolkit ×1