从列表中操作复选框

ene*_*ene 5 wolfram-mathematica

我想创建一个简单的接口,用于从Mathematica中具有大量列的数据库中为较少数量的列进行SQL SELECT查询.
我有我的列名列表,例如:

dbColumnNames={"name1","name2","name3",...."nameN"}
Run Code Online (Sandbox Code Playgroud)

我想要做的是为这个列表中的每个元素设置一个与列表元素相同的复选框,并在选中时检查列表是否已选中列名.
例如,我点击"name1","name50","name74",列表应如下所示:

selectedNames={"name1","name50","name74"}
Run Code Online (Sandbox Code Playgroud)

如果我有该列表,则很容易创建SQL查询字符串.

Mr.*_*ard 5

看看帮助CheckboxBarTogglerBar.

这是一个工作示例:

dbColumnNames = {"name1", "name2", "name3", "name4", "name5", "nameN"};
TogglerBar[Dynamic[selected], dbColumnNames]
Run Code Online (Sandbox Code Playgroud)

Mathematica图形

单击要选择的那些,然后评估:

selected
Run Code Online (Sandbox Code Playgroud)

要查看该符号的当前值.符号名称selected是任意的.


如果您有长名称,您可能更喜欢:

CheckboxBar[Dynamic[selected], dbColumnNames, Appearance -> "Vertical"]
Run Code Online (Sandbox Code Playgroud)

Mathematica图形

如果您有很多列名,您可能更喜欢:

TextCell[
 TogglerBar[Dynamic[selected], dbColumnNames, Appearance -> "Row"],
 LineIndent -> 0
]
Run Code Online (Sandbox Code Playgroud)