这次讨论和随附的脚本是由以下人员发起的:
我投票支持文斯的愿望文本编辑框自动完成器,因为它类似于我对内置的“愿望”列表框筛选。我编写了特定的 UI(对话框/窗口),为这两个项目实现了类似的功能。但是,我决定尝试创建一个函数来自动构建这些“小部件”,一旦成功,确定是否班级可以定义为代替函数。
附有3个脚本:
- TEB_LB_Widget.jsl - 该脚本定义了支持功能和两个主要功能来构建这些小部件: MakeLBFilter()和MakeTEBSelector() .
- TestMakeLBFilter.js l - 此脚本包含上述脚本(您需要更改该脚本所在位置的路径),然后构建一个带有两个不同列表框的简单窗口,然后为每个列表框创建一个过滤器。注意脚本有等待语句,仅用于演示。 脚本底部有几个测试用例。(代码片段和显示如下所示。)
- 测试TEBSelector.jsl - 这类似于脚本 2。检查包含的路径。 这个小部件不太发达。
两个小部件都可以添加额外的功能,但我决定研究是否可以将每个小部件及其功能创建为用户定义类的实例。
我读了讨论面向对象的 JSL 示例2016 年 8 月 18 日。 语法仍然没有“点击”我,我正在寻找方向:
- 可以使用 JMP 类来定义对象小部件吗?在这种情况下,该类需要一个现有对象(可能还有它的容器)和一个添加新对象的函数,并且在每种情况下都需要一个列表。
- 如果是的话,上课是一种更好的方式,并且有人有一个简单的示例或文档链接,而不是 2016 链接中包含的文档,我将不胜感激。然后我会追求转换。 我正在添加名称,来自 2016 年的讨论: @drewfoglia , @Phil_Brown , @msharp
@vince_faller ,我同意你的愿望清单,最好是内置的。但是,如果知道如何对新示例进行原型设计,那就太好了。
Names Default to Here(1);
Include("C:\temp\TEB_LB_Widget.jsl");
myList1 = {"cat", "dog", "head", "cow", "heel", "help"};
dt = Open("$sample_data/semiconductor capability.jmp",Invisible);
myList2 = dt << get column names("Continuous", "string");
nw = New Window( "Example ListBox Filter",
HListBox(
VlistBox(
lb1 = ListBox(mylist1,
<<SET size=""></SET>
无文本 - 显示完整列表
左使用“包含”,右使用“开始于”