1

我正在制作带有右键单击弹出菜单的 GUI,在图形上但同时出现一个带有复制或保存图形选项的弹出菜单,我如何删除最后一个弹出菜单?

 library(cairoDevice)
 library(ggplot2)
 library(gWidgets)
 library(gWidgetsRGtk2)
 require(RGtk2)

  plot1<-ggplot(mtcars, aes(wt, mpg))+ geom_point(colour = "black", size = 3)
  plot2<-ggplot(mtcars, aes(wt, mpg))+geom_point(colour = "red", size = 3)
  plot3<- ggplot(mtcars, aes(wt, mpg))+ geom_point(colour = "yellow", size = 3,shape=20)

  options(guiToolkit = "RGtk2")
  w        <-gwindow("GUI")
  g        <-ggroup(cont=w)
 graphic1 <- ggraphics(cont=g)
 print(plot1)

 ml<-list()
 ml$plot2<- list(handler=function(h,...){
  svalue(graphic1)<- print(plot2)
  })
 ml$plot3<- list(handler=function(h,...){
 svalue(graphic1)<-print(plot3)
 })

 add3rdMousePopupmenu(obj=graphic1,menulist=ml,action=graphic1)`
4

2 回答 2

2

RGtk2 下的 ggraphics 有一些隐藏的参数。尝试传递no_popup=TRUE给 ggraphics 构造函数。如果你想去掉橡皮筋,通过的论据是do.rubber.banding=FALSE(为什么 . 代表一个,_ 代表另一个?不要问...)

于 2013-06-12T14:24:04.397 回答
0

看,

w <- gwindow("notebook example")
nb <- gnotebook(cont=w)

devs <- lapply(1:5, function(i) ggraphics(cont=nb,no_popup=T, label=as.character(i)))

addHandlerChanged(nb, handler=function(h,...) {
gg <- h$obj[h$pageno]
visible(gg) <- TRUE
})
于 2014-07-01T19:45:32.857 回答