在R tcltk中,如何检查窗口小部件是否存在并替换它是否存在?

时间:2015-10-01 00:02:40

标签: r tcl tk

我正在使用R中的tcltk接口创建一组下拉组合框,这些组合框基于用户加载的任何数据集中的字段。现在我有一个按钮(“getbox”)在加载读取数据的数据后按下然后创建一个组合框,其中包含每个字段的选项。我希望每次按下按钮而不是添加新的组合框时都能重新创建组合框。这是我的一个例子:

tt <- tktoplevel()
comboframe <- tkframe(tt)

   getbox <- tkbutton(tt, text = "Create Combo Box", command = function() {
        fields <- names(mtcars)
        cbox <- tkwidget(comboframe, "ComboBox", editable = FALSE, values = fields)
        tkgrid(cbox) 
        })

   tkgrid(getbox)
   tkgrid(comboframe)

我尝试在getbox命令函数中添加if语句,但无法使其工作。

if (exists(comboframe)) {
    tkdestroy(comboframe)
}  # then create combobox ...

有关如何更换组合框而不是添加新组合框的任何想法?谢谢!

0 个答案:

没有答案