gpt4 book ai didi

powershell - 如何将键盘焦点设置到 Powershell 中的 TextBox

转载 作者:行者123 更新时间:2023-12-01 09:34:07 27 4
gpt4 key购买 nike

我正在寻找如何在 powershell 中自动将键盘焦点设置为文本框。

我有一个脚本,要求用户从下拉菜单中选择一个选项,然后根据该选择,他们必须输入某些参数。这一切正常。

为了便于使用,我希望每次显示新的输入框时,键盘的焦点都转移到输入框,这样用户就不必一直点击它来输入一些文本。

到目前为止我的代码:

function inputBox($parameter)
{
$objForm = New-Object System.Windows.Forms.Form
$objForm.Text = $parameter
$objForm.Size = New-Object System.Drawing.Size(300,200)
$objForm.StartPosition = "CenterScreen"

$objForm.KeyPreview = $True
$objForm.Add_KeyDown({if ($_.KeyCode -eq "Enter")
{$paramValue=$objTextBox.Text;$objForm.Close()}})
$objForm.Add_KeyDown({if ($_.KeyCode -eq "Escape")
{$objForm.Close()}})



$OKButton = New-Object System.Windows.Forms.Button
$OKButton.Location = New-Object System.Drawing.Size(75,90)
$OKButton.Size = New-Object System.Drawing.Size(75,25)
$OKButton.Text = "OK"
$OKButton.Add_Click({$paramValue=$objTextBox.Text;$objForm.Close()})
$objForm.Controls.Add($OKButton)

$objLabel = New-Object System.Windows.Forms.Label
$objLabel.Location = New-Object System.Drawing.Size(10,20)
$objLabel.Size = New-Object System.Drawing.Size(280,20)
$objLabel.Text = $parameter
$objForm.Controls.Add($objLabel)

$objTextBox = New-Object System.Windows.Forms.TextBox
$objTextBox.Location = New-Object System.Drawing.Size(10,40)
$objTextBox.Size = New-Object System.Drawing.Size(260,20)
$objForm.KeyPreview = $True
$objForm.Controls.Add($objTextBox)

$objForm.Topmost = $True

$objForm.Add_Shown({$objForm.Activate()})
[void] $objForm.ShowDialog()

return $paramValue

有任何想法吗?

谢谢!

最佳答案

按照您的代码,我可以在其中找到一个下拉菜单,以便在显示表单时将焦点放在文本框上,我已经完成了:

$objForm.Add_Shown({$objForm.Activate(); $objTextBox.focus()})

关于powershell - 如何将键盘焦点设置到 Powershell 中的 TextBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11500962/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com