我刚开始使用tcltk
and R
。而且我无法通过myFun1
调用第二个函数时调用的函数访问计算值myFun2
:
这是我的 UI 的简化版本:
简单的tcltk接口
library(tcltk)
tt <- tktoplevel()
topMenu <- tkmenu(tt)
tkconfigure(tt, menu = topMenu)
fileMenu <- tkmenu(topMenu, tearoff = FALSE)
tkadd(fileMenu, "command", label = "Function1", command = myFun1)
tkadd(fileMenu, "command", label = "Function2", command = myFun2)
tkadd(topMenu, "cascade", label = "Tab", menu = fileMenu)
tkfocus(tt)
我的职能
myFun1 <- function() {
compVal <- 2*3
compVal
}
myFun2 <- function() {
msg <- paste("The value is: \n", compVal )
mbval<- tkmessageBox(title="This is the title",
message=msg,type="yesno",icon="question")
}
调用myFun1
有效,但myFun2
返回
粘贴错误(“值是:\n”,compVal):找不到对象“compVal”
包裹也compVal
不起作用return(compVal)
。我也在考虑这样做:
res <- list(compVal=compVal)
但我无法访问创建的列表myFun2
。关于如何访问myFun1
内部返回值表单的任何建议myFun2
?