如何在鼠标单击时关闭表单?

时间:2015-09-18 06:12:20

标签: powershell mouseevent

我在PowerShell中创建了一个基于此article的图形日期选择器。本文中代码的以下部分有助于在日期选择后按Enter键以关闭表单:

$objForm.Add_KeyDown({
    if ($_.KeyCode -eq "Enter") 
        {
            $dtmDate=$objCalendar.SelectionStart
            $objForm.Close()
        }
    })

我还想为日期选择添加鼠标事件并关闭表单。所以问题是,一旦选择了日期和MouseUp事件,我们如何关闭表单? 感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用DateSelected事件,而不是为所有Click / MouseDown / MouseUp事件注册事件处理程序。从描述:

  

当用户使用鼠标选择明确的日期时发生。

$objForm.Add_DateSelected({
        $dtmDate=$objCalendar.SelectionStart
        $objForm.Close()
    })

在PowerShell 3.0或更高版本中,您可能需要更改$dtmDate变量的范围才能使其正常工作:

$script:dtmDate = $objCalendar.SelectionStart

或(-Scope 1表示“直接父作用域”或“1步调用堆栈”)

Set-Variable -Scope 1 -Name dtmDate -Value $objCalendar.SelectionStart
相关问题