我正在尝试在PowerShell中制作BlackJack游戏,并以此作为学习该语言的唯一目的。PowerShell - 表单按钮单击右括号外的变量变量
不是我已经开始与形式的测试(选择打/架),发现一个形式测试文件的以下问题:
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | Out-Null
$Form = New-Object system.Windows.Forms.Form
$Form.Text = "Debug."
$Form.AutoScroll = $True
$Form.AutoSize = $True
$Form.AutoSizeMode = "GrowAndShrink"
$Form.BackColor = "Red"
# $Form.Icon = [system.drawing.icon]::ExtractAssociatedIcon("C:\Scripts\Private\SVTserv.ico") ### Commented out because other people don't have this file.
$Form.MinimizeBox = $False
$Form.MaximizeBox = $False
$Form.WindowState = "Normal"
$Form.SizeGripStyle = "Hide"
$Form.ShowInTaskbar = $False
$Form.Opacity = 0.7
$Form.StartPosition = "CenterScreen"
$Label = New-Object System.Windows.Forms.Label
$Label.Text = "Debug, trigger: @Null."
$Label.AutoSize = $True
$Form.Controls.Add($Label)
$HButton = New-Object System.Windows.Forms.Button
$HButton.Location = New-Object System.Drawing.Size(75,120)
$HButton.Size = New-Object System.Drawing.Size(75,23)
$HButton.Text = "Debug1"
$HButton.Add_Click({
$X = "DATA.DEBUG.1"
Write-Host $X - test1.
$Form.Close()
Write-Host $X - test2.
}
)
Write-Host $X - test3.
$Form.Controls.Add($HButton)
$SButton = New-Object System.Windows.Forms.Button
$SButton.Location = New-Object System.Drawing.Size(150,120)
$SButton.Size = New-Object System.Drawing.Size(75,23)
$SButton.Text = "Debug2"
$SButton.Add_Click({
$X = "DATA.DEBUG.2"
Write-Host $X - test1.
$Form.Close()
Write-Host $X - test2.
}
)
$Form.Controls.Add($SButton)
$Form.ShowDialog() | Out-Null
Write-Host $X - test4.
击中DEBUG1按钮返回以下输出:
- test3.
DATA.DEBUG.1 - test1.
DATA.DEBUG.1 - test2.
- test4.
我在这里想要做的是设置变量$ X并稍后重新使用它,我需要在它将输出写入test4的部分使用它。
其他有用的信息,可能是我的PowerShell版本:
PS C:\Windows\System32\WindowsPowerShell\v1.0> Write-Host $PSVersionTable.PSVersion
Major Minor Build Revision
----- ----- ----- --------
4 0 -1 -1
我不确定这个问题是什么,你能详细说明一下吗?你想要发生什么? – Raf
@Raf变量$ X未写入“Write-Host $ X - test4”。线被触发。用于检查我提供的输出。 – SVT