Msg

Msg 对象表示一个 脚本对话框 输入事件消息。它由 Dialog.GetMsg 方法返回,该方法在您为 独立对话框 运行消息循环时调用。

属性名称返回类型说明

<默认值>

bool

如果消息有效,则返回 True,如果对话框已关闭,则返回 False(这意味着您应退出消息循环)。

buttons

string

返回一个字符串,表示生成消息时按下了哪个鼠标按钮。可能的值为 leftrightmiddle

checked

int

如果事件类型为 checked,则表示该项目的选中状态。如果在自动模式下使用复选框,这将是该项目的新选中状态。在手动模式下,这将表示 现有 状态,并且由您决定是否更改状态。

选中状态为:

0

未选中

1

选中

2

不确定

3

未选中/禁用

4

选中/禁用

5

不确定/禁用

control

string

返回事件中涉及的控件的名称。您可以通过将此字符串传递给 Dialog.Control 方法来获取表示该控件的 Control 对象。

  • 对于 timer 事件,这将返回触发的计时器的名称。

  • 对于 hotkey 事件,这将返回热键的名称。

  • 对于 drop 事件,这将返回文件被拖放到其上的控件的名称。

  • 对于 tab 事件,这会告诉您事件发生在哪个受监控的标签页中(您在 Dialog.WatchTab 方法中分配的 ID,或者如果您未分配 ID,则为标签页的数字句柄)。

  • 对于 dirchange 事件,这将告诉您哪个观察器检测到文件或文件夹更改(您通过 Dialog.WatchDir 方法分配的 ID)。

  • 如果您已通过 Dialog.NotifyIcon 方法向任务栏添加了图标,则 notifyicon 表示与该图标关联的事件。

0

未选中

1

选中

2

不确定

3

未选中/禁用

4

选中/禁用

5

不确定/禁用

control

cx

int

对于 resize 事件,该属性返回对话框的新宽度。

cy

int

对于 resize 事件,该属性返回对话框的新高度。

data

int 或// bool//

如果事件类型为 focus,则表示控件的新焦点状态 - 如果控件获得了焦点,则为 True;如果失去了焦点,则为 False

对于 组合框列表框 控件:如果事件类型为 selchangedblclk,则返回与选定项目关联的数据值。

对于 复选框 控件或 单选按钮:如果事件类型为 click,则返回一个 bool,表示当前选中状态。

对于三态 复选框:如果事件类型为 click,则返回一个 int,表示当前状态。

如果事件类型为 timer,则此值表示自上次触发此计时器以来经过的毫秒数。

如果事件类型为 tab,并且 value 属性设置为 filechange,则这表示在受监控的标签页中发生了哪些文件更改事件。 1 = 添加,2 = 删除,4 = 更改。这些值将被相加(例如 6 表示至少有一项被更改并且至少有一项被删除)。

dialog

string

返回父对话框的名称。

event

string

返回一个字符串,表示发生的事件。当前定义的事件为:

invalid

对话框已关闭

checked

对于启用了 Checkboxes 属性的列表视图控件,表示已单击了列表项的复选框。

click

单击了该控件(例如按钮、复选框、单选按钮、启用 Notify Clicks 属性的标记文本或静态控件)。

close

用户单击了对话框的关闭按钮。仅在将 Dialog.want_close 属性设置为 True 时才生成。您需要使用 Dialog.EndDlg 方法手动关闭对话框。

dblclk

双击了列表中的项目(列表框、组合框或列表视图)或双击了控件(启用 *Notify Clicks 的静态控件)。

dirchange

通过 Dialog.WatchChanges 方法建立了对其进行监视的文件或文件夹已发生更改。 control 属性告诉您触发哪个观察器。

drag

用户已从静态控件或列表视图控件启动拖放。您可以通过调用 Dialog.Drag 方法来响应。必须在控件上启用 Drag Source 属性才能生成此事件。

拖放

文件已拖放到你的对话框上。对话框模板必须将它的 接受拖放 属性设置为 True,才能启用拖放支持。

编辑变更

编辑字段的内容已修改。对于列表视图,这个事件表示列表项的标记已编辑。

获取焦点

控件获得或失去焦点。

热键

已按下一个按键组合,其使用 对话框.AddHotkey 方法添加为热键。

调整大小

对话框已被用户调整大小。仅当 对话框.want_resize 属性已设置为 True 时才会生成。不要将手动调整大小和自动调整大小与同一个控件混合:如果你在响应此事件时移动或调整控件大小,则该控件不应在对话框编辑器中设置任何 调整大小 标志。

右键单击

列表中的某一项已右键单击(列表框,列表视图),或已右键单击控件(启用了 通知单击 属性的静态控件)。

选择更改

选择项已更改(列表框,组合框,列表视图或标签页)。

计时器

已过使用 对话框.SetTimer 方法创建的周期性计时器。

标签页

在使用 对话框.WatchTab 方法监控的标签页中已发生事件。

focus

bool

如果控件在生成消息时有焦点,则返回 True

invalid

对话框已关闭

checked

对于启用了 Checkboxes 属性的列表视图控件,表示已单击了列表项的复选框。

click

单击了该控件(例如按钮、复选框、单选按钮、启用 Notify Clicks 属性的标记文本或静态控件)。

close

用户单击了对话框的关闭按钮。仅在将 Dialog.want_close 属性设置为 True 时才生成。您需要使用 Dialog.EndDlg 方法手动关闭对话框。

dblclk

双击了列表中的项目(列表框、组合框或列表视图)或双击了控件(启用 *Notify Clicks 的静态控件)。

dirchange

通过 Dialog.WatchChanges 方法建立了对其进行监视的文件或文件夹已发生更改。 control 属性告诉您触发哪个观察器。

drag

用户已从静态控件或列表视图控件启动拖放。您可以通过调用 Dialog.Drag 方法来响应。必须在控件上启用 Drag Source 属性才能生成此事件。

拖放

文件已拖放到你的对话框上。对话框模板必须将它的 接受拖放 属性设置为 True,才能启用拖放支持。

编辑变更

编辑字段的内容已修改。对于列表视图,这个事件表示列表项的标记已编辑。

获取焦点

控件获得或失去焦点。

热键

已按下一个按键组合,其使用 对话框.AddHotkey 方法添加为热键。

调整大小

对话框已被用户调整大小。仅当 对话框.want_resize 属性已设置为 True 时才会生成。不要将手动调整大小和自动调整大小与同一个控件混合:如果你在响应此事件时移动或调整控件大小,则该控件不应在对话框编辑器中设置任何 调整大小 标志。

右键单击

列表中的某一项已右键单击(列表框,列表视图),或已右键单击控件(启用了 通知单击 属性的静态控件)。

选择更改

选择项已更改(列表框,组合框,列表视图或标签页)。

计时器

已过使用 对话框.SetTimer 方法创建的周期性计时器。

标签页

在使用 对话框.WatchTab 方法监控的标签页中已发生事件。

focus

index

int

返回 组合框列表框标签页控件 的当前选择索引。

mousex

int

返回消息生成时鼠标光标的水平位置。

mousey

int

返回消息生成时鼠标光标的垂直位置。

object

对于 拖放 事件,此属性返回 Vector Item 对象,代表拖放到你的对话框上的文件。

qualifiers

string

返回指示在生成消息时按下的限定键(如果有的)的字符串。

该字符串可能包含以下任意或全部内容:shift、ctrl、alt、lwin、rwin

如果没有按任何限定键,则字符串为:none

result

bool

如果消息有效,则返回 True;如果对话框已关闭,则返回 False

tab

string

对于对话框标签页控件,如果控件位于标签页控件内部的对话框中,则返回父标签页的名称。

如果事件类型为 tab,则返回一个 Tab 对象,该对象代表发生事件的受监控标签页。反复调用此操作可能会导致效率低下。

value

string

对于 dblclkeditchangeselchange 事件,返回编辑字段(或选定项标签)的当前内容。

对于 tab 事件,指示在受监控标签页中发生的事件。可能的值包括 selectnavigatefilechangeactivatesrcdstviewflatclose(在你监控时如果标签页已关闭,则会发送)。

对于 drag 事件,这表示用于拖动的按钮(leftright)。

对于来自标记文本控件的 click 事件,这表示已单击的链接的 ID。

最后更新于