如何通过单击按钮来增加计数器的值?

How to increment value of a counter by clicking on a button?

我有一个这样的按钮 :

win <- gwindow("Extraction des mots clés", visible=TRUE)
obj2 <- gbutton("Valider et afficher les mots suivants",container=win)

我希望每次按下按钮时,脚本中设置为 0 的计数器都会递增。

k<-0

我创建了这个处理程序:

addHandlerClicked(obj2,handler = function(h,...){
k<-k+1
print (k)
return(k)
})

但是当我在 addHandlerClicked 之外做 print k 时,k 仍然是 0。那我该怎么办呢?另外,我上面写的指令return (k)可以用来实现吗?

提前致谢

这就是 R 函数的工作方式。 (全局)工作区中的对象只有一个值,当您在函数内创建同名对象时,它在外部没有同名对象的内存。 R 函数不修改其他变量,您必须 return 修改后的值并显式覆盖它。通常情况下。输入 <<-。这个赋值运算符会从函数一路走到全局环境,并尝试找到同名对象并写入over/to。输入 ?"<<-".

查看更多信息