1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# Crear un piano que suene # Crear una clase con dos propiedades: nombre y frecuencia de la nota class Nota { [String]$nombre [Int]$frecuencia } # Crear un ArrayList para añadir los objetos de la clase Coche $notas = New-Object System.Collections.ArrayList [void]$notas.Add([Nota]@{nombre="DO";frecuencia=261}) [void]$notas.Add([Nota]@{nombre="RE";frecuencia=293}) [void]$notas.Add([Nota]@{nombre="MI";frecuencia=329}) [void]$notas.Add([Nota]@{nombre="FA";frecuencia=349}) [void]$notas.Add([Nota]@{nombre="SOL";frecuencia=391}) [void]$notas.Add([Nota]@{nombre="LA";frecuencia=440}) [void]$notas.Add([Nota]@{nombre="SI";frecuencia=493}) $buttons_functionbuttoncount = $notas.count $loop = 0 #Formulario $Form = New-Object System.Windows.Forms.Form $Form.Text="Formulario" $Form.Size=New-Object System.Drawing.Size(500,500) $Form.StartPosition="CenterScreen" while($loop -lt $buttons_functionbuttoncount) { $thisbutton = New-Object System.Windows.Forms.Button [string]$thisbuttonname = $notas.nombre[$loop] $thisbutton.Text = $thisbuttonname $thisbutton.size = New-Object System.Drawing.Size(100,40) $thisbutton.Location = New-Object System.Drawing.Size(200,(40*$loop+1)) $thisbutton.Add_Click({ Write-Host $this.text $posicionnota = $notas.nombre.IndexOf($this.text) [System.Console]::Beep($notas[$posicionnota].frecuencia,500) }) $Form.Controls.Add($thisbutton) $loop += 1 } $Form.ShowDialog() |

