在一个脚本的 OnInit 方法中,它可以调用 ScriptInitData.AddColumn 方法来 添加自定义列 到 Opus。这些列可以在文件列表和信息提示中显示,并且可以使用 高级查找 功能进行搜索。每次调用 AddColumn 都将返回一个 ScriptColumn 对象,该对象需要由脚本初始化。
属性名称 | 返回类型 | 描述 | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
autogroup |
bool |
如果将此设置为 True(默认值),并且文件列表按此列 分组,Opus 将根据列值自动生成组。如果将其设置为 False,Opus 将期望您在 OnScriptColumn 函数中提供分组信息。 | ||||||||||||||||||||||||||||||||||||||||
autorefresh |
bool 或 int |
设置为 True(或 1)以强制 Opus 在文件更改时更新此列的值。您还可以将此值设置为 2 以强制 Opus 在文件属性更改时更新值(通常只有在文件修改时间或大小更改时才会更新)。 | ||||||||||||||||||||||||||||||||||||||||
defsort |
int |
此属性允许您控制列的默认排序行为。通常,当用户单击列标题按列排序时,列最初将按升序排序,然后再次单击将反转排序顺序。如果将 defsort 设置为 -1,则第一次单击列标题将按降序排序。日期和大小字段默认设置此行为。 | ||||||||||||||||||||||||||||||||||||||||
defwidth |
int 或 string |
指定列的默认宽度,除非文件列表启用了自动调整大小。如果指定一个简单的整数值,则表示以平均字符数衡量的宽度(例如 12 指定 12 个平均字符宽)。您也可以通过添加 px 后缀来指定像素的绝对数量(例如 "150px" 指定 150 像素)。 | ||||||||||||||||||||||||||||||||||||||||
ellipsis |
string |
允许您控制列的“省略号”方式;也就是说,当列的内容太宽而无法容纳在列中时会发生什么。默认情况下,字符串的结尾将替换为省略号 (...)。可用的标志是:
| ||||||||||||||||||||||||||||||||||||||||
graph_colors |
object:Vector |
对于图形列,指定第一个图形颜色集。只要图形的百分比低于阈值,就会以这些颜色显示图形。 graph_colors 属性返回一个 Vector;您需要使用 push_back() 方法将颜色添加到其中。 | ||||||||||||||||||||||||||||||||||||||||
graph_colors2 |
object:Vector |
与 graph_colors 相似,此属性允许您为图形列配置第二组颜色,当图形值超过阈值时将使用这组颜色。 | ||||||||||||||||||||||||||||||||||||||||
graph_threshold |
对于图形列,指定图形从第一组颜色切换到第二组颜色的百分比阈值(例如,蓝色图形变为红色以指示驱动器几乎已满)。将阈值设置为 -1 以完全禁用第二组颜色。 | |||||||||||||||||||||||||||||||||||||||||
grouporder |
string |
如果 autogroup 属性设置为 False,grouporder 属性允许您控制列组的显示顺序。每个组应以所需的顺序列在字符串中,以分号 (;) 分隔(例如 "Never Modified;Modified")。如果未提供,组将默认按字母顺序排序。 | ||||||||||||||||||||||||||||||||||||||||
header |
string |
如果设置了此属性,则它定义了将在此列添加到文件窗口时在列标题中显示的字符串。如果未设置,将使用 label 值。 | ||||||||||||||||||||||||||||||||||||||||
infotiponly |
bool |
如果希望您的列仅供 信息提示 使用,请将其设置为 True。如果您的列需要大量时间才能返回值,您可能希望这样做,在这种情况下,用户可能只想在信息提示中使用它,以便他们可以按需查看值。如果设置为 False(默认值),则该列将在任何地方都可用。 | ||||||||||||||||||||||||||||||||||||||||
justify |
string |
此字段允许您控制列的对齐方式。如果未指定,列默认左对齐。可接受的值是 center、left、right 和 path。 | ||||||||||||||||||||||||||||||||||||||||
keyscroll |
bool |
如果将其设置为 True,并且用户启用了 排序字段特定按键滚动 配置选项,那么您的列将参与此特殊模式。 | ||||||||||||||||||||||||||||||||||||||||
label |
string |
使用此方法设置列的标签。当列添加到 Details/增强模式文件列表(除非被 header 属性覆盖)时,以及在各种列列表中(例如在 文件夹选项 对话框中)都会显示此标签。 | ||||||||||||||||||||||||||||||||||||||||
match |
**Vector:**string |
如果将字符串添加到此 Vector(例如通过 push_back 方法),它将用于在使用 高级查找 功能搜索此列时提供可能的值的下拉列表。 | ||||||||||||||||||||||||||||||||||||||||
maxstars |
int |
如果列类型设置为 stars,则此属性允许您指定将使用的最大星数。这用于确保列的大小正确。 | ||||||||||||||||||||||||||||||||||||||||
method |
string |
这是脚本中提供新列的实际值的该方法的名称。这通常设置为 OnXXXXX,其中 XXXXX 是命令的名称,但可以使用任何方法名称。 当调用方法时,它将传递一个参数,即 ScriptColumnData 对象。通常,此方法称为 OnScriptColumn。 | ||||||||||||||||||||||||||||||||||||||||
multicol |
bool |
如果您的脚本实现多个需要进行共同计算才能执行的列,您可能希望设置 multicol 属性。如果将其设置为 True,则您的列处理程序函数可以选择同时返回多个列的数据,而不仅仅是它正在调用的特定列。 当调用您的处理程序时,ScriptColumnData 对象将不包含通常的 group、sort、type 和 value 属性。相反,它将具有一个 columns 属性,该属性指向一个 Map,该 Map 允许您一次设置一个或多个列的值。 例如,您可以这样设置名为 MyColumn 的列的值: scriptColData.columns("MyColumn").value = "My Column Value"; | ||||||||||||||||||||||||||||||||||||||||
name |
string |
这是列的原始名称。这决定了可以用于以编程方式控制列的名称(例如,Set COLUMNSTOGGLE 命令可用于按名称切换列的显示)。 自定义列的名称由提供该列的脚本的名称和该列本身的原始名称组合而成,并在前缀 scp: 之前。例如,如果您的脚本名为 My Script,并且您的列名为 My Column,则可以使用命令 Set COLUMNSTOGGLE="scp:My Script/My Column" 切换此列。如果您不确定任何内容,可以使用按钮编辑器菜单自动构建命令。 | ||||||||||||||||||||||||||||||||||||||||
namerefresh |
设置为 True 以强制 Opus 在文件名称更改时更新此列的值。 | |||||||||||||||||||||||||||||||||||||||||
nogroup |
bool |
设置为 True 以防止文件列表按此列分组。 | ||||||||||||||||||||||||||||||||||||||||
nosort |
bool |
设置为 True 以防止文件列表按此列排序。 | ||||||||||||||||||||||||||||||||||||||||
timeout |
int |
Opus 在可能放弃等待列值计算之前的毫秒数。 | ||||||||||||||||||||||||||||||||||||||||
type |
string |
此字段允许您设置列的默认类型。 如果未指定,列默认设置为纯文本。 可接受的值是:
对于纯文本列,您可以指定 numericsort 或 nonumericsort 来覆盖文件夹选项中的 "数字顺序文件名排序" 设置。类似地,wordsort 或 nowordsort 可用于覆盖 "单词排序(对连字符等进行特殊处理)" 设置。您也可以组合这两个选项,例如 nonumericsort,nowordsort 以仅请求基本排序。对于尊重文件夹选项排序设置的纯文本数据,请将类型保留为空,或将其设置为空字符串。 对于 date、time 和 datetime 列,您还可以指定 utc 以将值自动从 UTC 转换为本地时间(例如 datetime,utc)。 对于 number 和 double 列,您还可以指定 signed 以将值视为有符号值而不是无符号值(例如 number,signed)。 对于图形列,您可以使用 graph_colors、graph_colors2 和 graph_threshold 来配置图形的外观。 您的 OnScriptColumn 方法可以在每个文件的基础上覆盖类型,但是此字段设置默认类型,并且还控制使用您的列搜索时 高级查找 功能的行为。 | ||||||||||||||||||||||||||||||||||||||||
userdata |
variant |
允许您将数据值与列关联。该值将在您的列处理程序的 ScriptColumnData.userdata 属性中传递 |