我的脚本需要等待用户输入才能继续处理。在使用 R gWidgets 包实现 GUI 后,我发现 gbasicdialog 小部件比 gwindow 工作得更好,因为它是模态的。
gwindow 小部件具有有用的最小化和最大化按钮。gbasicdialog 小部件没有这些按钮,而且我经常在 GUI 中显示大型 gtable,这意味着用户必须反复单击并拖动以展开窗口才能看到足够多的表格。
到目前为止,我将 gtable 小部件的大小调整如下:
library(gWidget)
library(gWidgetsRGtk2)
library(RGtk2)
options(guiToolkit = "RGtk2")
mywindow <- gbasicdialog("Display table", do.buttons = FALSE)
# there can be multiple ggroups to one table, which all occupy the gbasicdialog
mygroup <- ggroup(container = mywindow, horizontal = FALSE)
mytable <- gtable(a_data_frame, container = mygroup, expand = TRUE, fill = TRUE)
size(mytable) <- c(500, 500) # or any other large enough dimension
exitbutton <- gbutton("Done", container = mywindow,
handler = function(h, ...) {
#some steps
dispose(mywindow)
})
visible(mywindow, TRUE)
如何为交互式/模态窗口显示最大化/最小化按钮,或尽可能多地显示大型小部件?