我正在使用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 ...
有关如何更换组合框而不是添加新组合框的任何想法?谢谢!