2017-06-13 50 views
0

我目前正在基于R包“gWidgets2RGtk2”构建一个GUI。我想要创建一个与鼠标右键事件反应的按钮。不幸的是,下面的代码会生成一个按钮,但是当右键单击该按钮时,不会显示gmessage。有人可以告诉我做错了吗?使用addHandlerXXX将处理程序添加到R中的(按钮)小部件

library("gWidgets2") 
library("RGtk2") 
library("gWidgets2RGtk2") 
options("guiToolkit"="RGtk2") 
# 
w <- gwindow("main_window_header") 
B <- gbutton("?", container = w) 
addHandlerRightclick(B, handler = function(h, ...){gmessage("It worked!")}) 

使用线

addHandlerDoubleclick(B, handler = function(h, ...){gmessage("It worked!")}) 

代替

addHandlerRightclick(B, handler = function(h, ...){gmessage("It worked!")}) 

未示出gmessage当双击按钮。但是,

addHandler(B, signal = "clicked", handler = function(h, ...){gmessage("It worked!")}) 

正在完美工作。我错过了什么?

回答

0

我找到了解决方案。显然,右键单击处理程序需要包“gWidgets”。将

library("gWidgets") 

添加到头使得该示例适用于addHandlerRightclick。

相关问题