如何将旋转轮动画添加到gWidgets GUI

时间:2012-10-10 12:21:06

标签: r gwidgets

我刚刚开始在R中制作GUI,作为第一步,我正在使用gWidgets进入一些较低级别的框架......

我想添加一个旋转轮动画来显示进程正在运行。虽然gWidgets似乎不支持这一点,但RGtk2确实如此。

所以我的基本问题是当gWidgets“本机”支持小部件时,如何将一个RGtk2小部件添加到gWidgets GUI。另外,如何在添加后操纵小部件......

提前致谢

托马斯

1 个答案:

答案 0 :(得分:2)

这是如何在gWidgets或gWidgets2(在github上)完成的:

library(gWidgets) ## or gWidgets2
options(guiToolkit="RGtk2")
library(RGtk2)    ## needed

w <- gwindow()
g <- ggroup(cont=w)
g1 <- ggroup(cont=g) ## holds spinner

b1 <- gbutton("stop spinner", cont=g, handler=function(h,...) {
  spin$stop()
})
b2 <- gbutton("remove spinner", cont=g, handler=function(...) {
  delete(g, g1)
})


spin <- gtkSpinner()
spin$start()

## pack into g1 box container:
## in gWidgets2 can do this: add(g1, spin)
## for gWidgets it can be hacked:
g1@widget@widget$packStart(spin)

在gWidgets2中有一个gprogressbar小部件可以做类似的事情,但不是这个。