function Load-Form {
Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName System.Drawing

$form = New-Object System.Windows.Forms.Form 
$form.Text = "Data Entry Form"
$form.Size = New-Object System.Drawing.Size(400,300) 
$form.StartPosition = "CenterScreen"

$OKButton = New-Object System.Windows.Forms.Button
$OKButton.Location = New-Object System.Drawing.Point(75,120)
$OKButton.Size = New-Object System.Drawing.Size(75,23)
$OKButton.Text = "OK"
$OKButton.DialogResult = [System.Windows.Forms.DialogResult]::OK
$form.AcceptButton = $OKButton
$form.Controls.Add($OKButton)

$CancelButton = New-Object System.Windows.Forms.Button
$CancelButton.Location = New-Object System.Drawing.Point(150,120)
$CancelButton.Size = New-Object System.Drawing.Size(75,23)
$CancelButton.Text = "Cancel"
$CancelButton.DialogResult = [System.Windows.Forms.DialogResult]::Cancel
$form.CancelButton = $CancelButton
$form.Controls.Add($CancelButton)

$StartButton = New-Object System.Windows.Forms.Button
$StartButton.Location = New-Object System.Drawing.Point(75,90)
$StartButton.Size = New-Object System.Drawing.Size(75,23)
$StartButton.Text = "Start"
$StartButton.DialogResult = [System.Windows.Forms.DialogResult]::None
$StartButton.Add_Click({
Test
$OUTPUT_RICHTEXT.Text+="Get out"
})
$form.Controls.Add($StartButton)

$SCRIPT:OUTPUT_RICHTEXT=New-Object System.Windows.Forms.RichTextBox
$OUTPUT_RICHTEXT.Location=New-Object System.Drawing.Size(10,150)
$OUTPUT_RICHTEXT.Size=New-Object System.Drawing.Size(300,100)
$OUTPUT_RICHTEXT.Multiline=$True
$OUTPUT_RICHTEXT.ReadOnly = $True
$OUTPUT_RICHTEXT.BackColor = [Drawing.Color]::White
$OUTPUT_RICHTEXT.ScrollBars = "Vertical"
$form.Controls.Add($OUTPUT_RICHTEXT)

$label = New-Object System.Windows.Forms.Label
$label.Location = New-Object System.Drawing.Point(10,20) 
$label.Size = New-Object System.Drawing.Size(280,20) 
$label.Text = "Please enter the information in the space below:"
$form.Controls.Add($label) 

$textBox = New-Object System.Windows.Forms.TextBox 
$textBox.Location = New-Object System.Drawing.Point(10,40) 
$textBox.Size = New-Object System.Drawing.Size(260,20) 
$form.Controls.Add($textBox) 

$form.Topmost = $True

$form.Add_Shown({$textBox.Select()})
$result = $form.ShowDialog()

if ($result -eq [System.Windows.Forms.DialogResult]::OK)
{
    $x = $textBox.Text
    $x
}
}

function Test {
$script:OUTPUT_RICHTEXT.SelectionColor = 'Magenta'
$script:OUTPUT_RICHTEXT.AppendText("This text will be Magenta. &#8175;n")
$script:OUTPUT_RICHTEXT.SelectionColor = 'Green'
$script:OUTPUT_RICHTEXT.AppendText("This text will be Green. &#8175;n")
$script:OUTPUT_RICHTEXT.SelectionColor = 'Blue'
$script:OUTPUT_RICHTEXT.AppendText("This text will be Blue. &#8175;n")
}

Load-Form