15.3.3.16 控件对象属性

uicontrol对象的属性(另请参阅uicontrol):

类别:

外观 |回调执行 |控件选项 |创建/删除 |显示 |鼠标交互 |对象标识 |对象位置 |父级/子级 |文本外观 

外观

backgroundcolor: colorspec, def. [0.9400 0.9400 0.9400]

此控件对象的背景颜色值。

cdata: array, def. [](0x0)

用于表示控制对象的图像数据,存储为 M x N x 3 的 RGB 数组。

extent (read-only): four-element vector

与 uicontrol 关联的文本字符串的大小,以 [0 0 width height] 形式返回(前两个元素始终为零)。

对于多行字符串,返回的 widthheight 表示包围所有行的矩形的大小。

foregroundcolor: colorspec, def. [0 0 0]

此控件对象的文本颜色值。另请参阅颜色规格

style: "checkbox" | "edit" | "frame" | "listbox" | "popupmenu" | {"pushbutton"} | "radiobutton" | "slider" | "text" | "togglebutton"

所创建的控制对象的类型。有关可用控件样式的完整描述,请参阅"uicontrol"函数 

回调执行

busyaction: "cancel" | {"queue"}

定义当 Octave 无法中断另一个对象正在执行的回调时,如何处理此对象回调属性的执行。这仅当当前正在执行的回调对象的 interruptible 属性设置为 "off" 时才相关。中断回调对象的 busyaction 属性指示中断回调是排队("queue",默认值)还是丢弃("cancel")。另请参阅回调部分 

callback: string, def. [](0x0)

由有效 Octave 表达式组成的字符串,在激活此控件时执行。

interruptible: "off" | {"on"}

指定此对象的回调函数是否可以被其他回调中断。默认情况下,interruptible"on",使用 drawnowfigurewaitforgetframepause 函数的回调最终会被中断。另请参阅回调部分 

keypressfcn: string | function handle, def. [](0x0)

当此控件对象获得焦点时按下按键所执行的回调函数。函数的第一个参数是调用该 uicontrol 对象的句柄。第二个参数包含一个事件结构体,该结构体具有以下成员:

Character:

按键的 ASCII 值

Modifier:

一个元胞数组,包含表示与按键同时按下的修饰键的字符串

Key:

按键的小写描述

Source:

执行回调函数的图形对象句柄

EventName:

"KeyPress"

有关如何编写图形回调函数的信息,请参阅回调部分 

控件选项

enable: "inactive" | "off" | {"on"}

设置此控制对象是启用、禁用(灰显)还是不活动状态。

listboxtop: scalar, def. 1

将出现在 "listbox" 控件顶部的字符串参数的索引。

max: scalar, def. 1

最大控件值,其对控件的影响取决于控件类型。对于 "checkbox"、"pushbutton"、"togglebutton""radiobutton" 控件,"max" 值被赋值给 "value" 属性。对于 "slider" 控件,"max" 定义滑块的最大值。对于 "edit""listbox" 控件,如果 Max - Min > 1,则控件分别允许多行或多选。

min: scalar, def. 0

最小控件值,其对控件的影响取决于控件类型。对于 "checkbox"、"pushbutton"、"togglebutton""radiobutton" 控件,"min" 值被赋值给 "value" 属性。对于 "slider" 控件,"min" 定义滑块的最小值。对于 "edit""listbox" 控件,如果 Max - Min > 1,则控件分别允许多行或多选。

sliderstep: two-element vector, def. [0.010000 0.100000]

分数步长,相对于滑块的 Min - Max 跨度,表示用户单击对象时滑块移动的量。"sliderstep" 被指定为一个双元素向量 [minor major],其中 "minor" 是单击滑块箭头时的步长,"major" 是在滑块轨道上单击时的步长。

value: scalar, def. 0

与控制对象当前状态相关的数值,其含义取决于控制对象的 "style"。

创建/删除

beingdeleted: {"off"} | "on"

指示已启动删除此对象的属性。beingdeleted 设置为 true,直到对象不再存在为止。

createfcn: string | function handle, def. [](0x0)

在创建 uicontrol 后立即执行的回调函数。该函数通常通过设置根对象的默认属性来指定,例如 set (groot, "defaultuicontrolcreatefcn", 'disp ("uicontrol created!")')

有关如何编写图形回调函数的信息,请参阅回调部分 

deletefcn: string | function handle, def. [](0x0)

在删除 uicontrol 之前立即执行的回调函数。

有关如何编写图形回调函数的信息,请参阅回调部分 

显示

clipping: "off" | {"on"}

如果 clipping"on",则 uicontrol 在其父轴范围之外的部分将被裁剪。

visible: "off" | {"on"}

如果 visible"off",则在屏幕上不会渲染 uicontrol。

鼠标交互

buttondownfcn: string | function handle, def. [](0x0)

有关如何编写图形回调函数的信息,请参阅回调部分 

contextmenu: graphics handle, def. [](0x0)

当前与此 uicontrol 对象关联的 uicontextmenu 对象的图形句柄。

hittest: "off" | {"on"}

指定 uicontrol 是处理鼠标事件还是将事件传递给其祖先对象。启用后,该对象可以通过评估 "buttondownfcn" 来响应鼠标单击,显示 uicontextmenu,并最终成为根对象的 "currentobject"。这仅在对象通过 "pickableparts" 属性可被拾取时有效。另请参阅pickableparts 属性 

pickableparts: "all" | "none" | {"visible"}

指定 uicontrol 是否接受鼠标单击。默认情况下,pickableparts"visible",只有 uicontrol 的可见部分或其子项可以对鼠标单击做出反应。当 pickableparts"all" 时,可见和不可见部分(或子部分)都可能对鼠标单击做出反应。当 pickableparts"none" 时,该对象上的鼠标单击将被忽略,并传递给该对象下面的任何对象。当对象配置为接受鼠标单击时,"hittest" 属性将决定如何处理它们。另请参阅hittest 属性 

selected: {"off"} | "on"

指示此 uicontrol 是否被选中的属性。

selectionhighlight: "off" | {"on"}

如果 selectionhighlight"on",则 uicontrol 的选中状态会在视觉上突出显示。

tooltipstring: string, def. ""

当鼠标指针悬停在控件对象上时,在工具提示中显示的文本字符串。

对象标识

tag: string, def. ""

用于标记图形对象的用户定义字符串。

type (read-only): string

图形对象的类名。type 始终为 "uicontrol"

userdata: Any Octave data, def. [](0x0)

要与图形对象关联的用户定义数据。

对象位置

position: four-element vector, def. [0 0 80 30]

控件对象的大小,表示为四元素向量 [left bottom width height]。

units: "centimeters" | "characters" | "inches" | "normalized" | {"pixels"} | "points"

用于解释 "position" 属性的度量单位。

父级/子级

children (read-only): vector of graphics handles, def. [](0x0)

uicontrol 的子级图形句柄。

handlevisibility: "callback" | "off" | {"on"}

如果 handlevisibility"off",则 uicontrol 的句柄在其父级的 "children" 属性中不可见。

parent: graphics handle

父图形对象的句柄。

文本外观

fontangle: "italic" | {"normal"}

控制字体是斜体还是正常体。

fontname: string, def. "*"

用于文本渲染的字体名称。设置此属性时,文本渲染引擎将在系统中搜索匹配的字体。如果未找到匹配字体,则使用默认的无衬线字体(与默认的 "*" 值相同)。

编程提示:在非原生使用 FontConfig 的系统上(即除 Linux 之外的所有系统),字体缓存在 Octave 安装时构建。安装新字体后,您需要手动运行 system ("fc-cache -fv")

fontsize: scalar, def. 10

用于文本渲染的字体大小。另请参阅fontunits 属性

fontunits: "centimeters" | "inches" | "normalized" | "pixels" | {"points"}

用于解释 "fontsize" 属性的单位。

fontweight: "bold" | {"normal"}

控制文本渲染所用基础字体的变体(如粗体或正常体)。

horizontalalignment: {"center"} | "left" | "right"

指定 uicontrol 对象中文本的水平对齐方式。

string: string, def. ""

显示在控件对象上的文本。

verticalalignment: "bottom" | {"middle"} | "top"

指定 uicontrol 对象中文本的垂直位置。


版权所有 © 2024-2026 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-2