使用 PowerShell 计算并显示标签上的点击次数

问题描述 投票:0回答:1

我想在图形用户界面 (GUI) 中使用 PowerShell 计算并显示标签的点击次数。 这是我的脚本:

 Add-Type -AssemblyName System.Windows.Forms

# Create form
$form = New-Object Windows.Forms.Form
$form.Text = "Click Counter"
$form.Size = New-Object Drawing.Size(300,150)

# Create label
$label = New-Object Windows.Forms.Label
$label.Text = "Click Count: 0"
$label.AutoSize = $true
$label.Location = New-Object Drawing.Point(20,20)

# Create button
$button = New-Object Windows.Forms.Button
$button.Text = "Click Me"
$button.Location = New-Object Drawing.Point(20,60)


$button.Add_Click({
    $clickCount++
    $label.Text = "Click Count: $clickCount"
})

# Add controls to the form
$form.Controls.Add($label)
$form.Controls.Add($button)

# Initialize click count
$clickCount = 0

# Show the form
$form.ShowDialog()

但是问题是我无法增加标签中的数字,并且它已固定在数字“1”中

powershell counter
1个回答
0
投票

您需要将计数器变量声明为

script:
作用域变量,否则一旦事件完成,其值就会丢失:

$clickCount = 0
$button.Add_Click({
    $script:clickCount++
    $label.Text = "Click Count: $clickCount"
})

另一种选择是使用引用类型,例如数组:

$clickCount = @(0)
$button.Add_Click({
    $clickCount[0]++
    $label.Text = "Click Count: $clickCount"
})
© www.soinside.com 2019 - 2024. All rights reserved.