我怎样才能改变gWidgets中gframe的背景颜色?

时间:2013-06-06 03:49:21

标签: r gwidgets

我正在gWidgets R中构建GUI,但我需要将gFrame的背景颜色从“灰色”更改为“黄色”。 感谢

2 个答案:

答案 0 :(得分:1)

它应该是这样的

library(RGtk2); 
getBlock(fr)$modifyBg(GtkStateType["normal"], "yellow")

但这只是最外层的框架。不幸的是,要做到这一点,你需要将容器打包到一个事件框中并对其进行着色。这是模式:

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

w <- gwindow("test")
g <- ggroup(cont=w)

e <- gtkEventBox()
getWidget(g)$packStart(e, expand=TRUE, fill=TRUE)
fr <- gframe("Label")                    # no container
e$add(getBlock(fr))
e$modifyBg(GtkStateType["normal"], "yellow")

gbutton("click me", cont=fr)
glabel("a label", cont=fr)

答案 1 :(得分:0)

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

w <- gwindow("test")
g <- ggroup(cont=w)

e <- gtkEventBox()
getToolkitWidget(g)$packStart(e, expand=TRUE, fill=TRUE)
fr <- gframe("Label")                    # no container
e$add(widget@widget@block(fr))
e$modifyBg(GtkStateType["normal"], "yellow")

gbutton("click me", cont=fr)
glabel("a label", cont=fr)

出现下一个错误:错误en checkPtrType(小部件,“GtkWidget”):找不到'小部件'obj