using System;
using System.Drawing;
using System.Windows.Forms;
namespace Programm{
public class SteuerelementeForm : System.Windows.Forms.Form
{
private TextBox v1x_koo, v1y_koo;
private TextBox v2x_koo, v2y_koo;
private TextBox ergebnis, ergebn_y;
private TextBox px, py;
private TextBox v11_koo, v12_koo;
private TextBox erg_spz1, erg_spz2;
private Label p, p2;
private Label v11, v12;
private Label v1x,v1y;
private Label v2x,v2y;
private Label erg_x, erg_y;
private Button ergebns, spitze;
private MainMenu mainMenu;
private MenuItem vektoradditionMenu;
private MenuItem spitzeberechnenMenu;
private MenuItem beendenMenu;
private MenuItem helpMenu;
public SteuerelementeForm()
{
Name = "VektorForm";
Text = "Vektoren";
Font = new Font("Arial", 9F, (FontStyle.Bold), GraphicsUnit.Point, ((System.Byte)(0)));
FormBorderStyle = FormBorderStyle.FixedDialog;
Location = new Point(0,0);
Size = new Size(500,300);
Komponenten();
}
private void Komponenten()
{
mainMenu = new MainMenu();
vektoradditionMenu = new MenuItem();
spitzeberechnenMenu = new MenuItem();
beendenMenu = new MenuItem();
helpMenu = new MenuItem();
helpMenu.Index = 3;
helpMenu.Text = "?";
helpMenu.Click += new EventHandler(help_click);
beendenMenu.Index = 2;
beendenMenu.Text = "Beenden";
beendenMenu.Click += new EventHandler(beendenMenu_Click);
spitzeberechnenMenu.Index = 1;
spitzeberechnenMenu.Text = "Spitze berechnen";
spitzeberechnenMenu.Click += new EventHandler(spitzeberechnenMenu_Click);
vektoradditionMenu.Index = 0;
vektoradditionMenu.Text = "Vektoraddition";
vektoradditionMenu.Click += new EventHandler(vektoradditionMenu_Click);
mainMenu.MenuItems.Add(vektoradditionMenu);
mainMenu.MenuItems.Add(spitzeberechnenMenu);
mainMenu.MenuItems.Add(beendenMenu);
mainMenu.MenuItems.Add(helpMenu);
Menu = mainMenu;
}
public static void Main()
{
Console.Write("Starte Programm ...\n");
Application.Run(new SteuerelementeForm());
}
private void beendenMenu_Click(object sender, EventArgs e){
Console.Write("Beenden ...");
Close();
}
private void vektoradditionMenu_Click(object sender, EventArgs e){
v1x = new Label();
v1y = new Label();
v2x = new Label();
v2y = new Label();
erg_x = new Label();
erg_y = new Label();
v1x_koo = new TextBox();
v1y_koo = new TextBox();
v2x_koo = new TextBox();
v2y_koo = new TextBox();
ergebnis = new TextBox();
ergebn_y = new TextBox();
ergebns = new Button();
Controls.Add(v1x_koo);
Controls.Add(v1y_koo);
Controls.Add(v1x);
Controls.Add(v1y);
v1x.Name = "v1";
v1x.Text = "Vektor 1 (x): ";
v1x.Location = new Point(8,10);
v1x.Size = new Size(120,20);
v1y.Name = "v1";
v1y.Text = "Vektor 1 (y): ";
v1y.Location = new Point(8,40);
v1y.Size = new Size(120,20);
v2x.Name = "v2";
v2x.Text = "Vektor 2 (x): ";
v2x.Location = new Point(200,10);
v2x.Size = new Size(120,20);
v2y.Name = "v2";
v2y.Text = "Vektor 2 (y): ";
v2y.Location = new Point(200,40);
v2y.Size = new Size(120,20);
erg_x.Name = "ergebnis";
erg_x.Text = "Ergebnis (x)";
erg_x.Location = new Point(10,100);
erg_x.Size = new Size(120,20);
erg_y.Name = "ergebnis";
erg_y.Text = "Ergebnis (y)";
erg_y.Location = new Point(10,130);
erg_y.Size = new Size(120,20);
v1x_koo.Name = "Vektor1_x";
v1x_koo.Text = "";
v1x_koo.Location = new Point(90, 8);
v1x_koo.Size = new Size(90,20);
v1y_koo.Name = "Vektor1_y";
v1y_koo.Text = "";
v1y_koo.Location = new Point(90, 38);
v1y_koo.Size = new Size(90,20);
v2x_koo.Name = "Vektor2_x";
v2x_koo.Text = "";
v2x_koo.Location = new Point(280, 8);
v2x_koo.Size = new Size(90,20);
v2y_koo.Name = "v2";
v2y_koo.Text = "";
v2y_koo.Location = new Point(280, 38);
v2y_koo.Size = new Size(90,20);
ergebnis.Name = "Ergebnis";
ergebnis.Text = "";
ergebnis.Location = new Point(90,98);
ergebnis.Size = new Size(90,20);
ergebnis.Enabled = false;
ergebn_y.Name = "Ergebnis";
ergebn_y.Text = "";
ergebn_y.Location = new Point(90,128);
ergebn_y.Size = new Size(90,20);
ergebn_y.Enabled = false;
ergebns.Name = "Berechnen";
ergebns.Text = "&Berechnen";
ergebns.Location = new Point(200,98);
ergebns.Size = new Size(90,20);
ergebns.Click += new EventHandler(ergebns_click);
Controls.Remove(p);
Controls.Remove(p2);
Controls.Remove(v11);
Controls.Remove(v12);
Controls.Remove(px);
Controls.Remove(py);
Controls.Remove(v11_koo);
Controls.Remove(v12_koo);
Controls.Remove(erg_spz1);
Controls.Remove(erg_spz2);
Controls.Remove(spitze);
Controls.Add(v2x_koo);
Controls.Add(v2y_koo);
Controls.Add(ergebnis);
Controls.Add(ergebn_y);
Controls.Add(ergebns);
Controls.Add(v2x);
Controls.Add(v2y);
Controls.Add(erg_x);
Controls.Add(erg_y);
}
private void spitzeberechnenMenu_Click(object sender, EventArgs e){
p = new Label();
p2 = new Label();
v11 = new Label();
v12 = new Label();
px = new TextBox();
py = new TextBox();
v11_koo = new TextBox();
v12_koo = new TextBox();
erg_spz1 = new TextBox();
erg_spz2 = new TextBox();
spitze = new Button();
p.Name = "P";
p.Text = "Punkt P ( | )";
p.Location = new Point(10,10);
p.Size = new Size(350,20);
p2.Name = "P2";
p2.Text = "Punkt P'( | )";
p2.Location = new Point(200,10);
p2.Size = new Size(200,20);
px.Name = "Px";
px.Text = "";
px.Location = new Point(65,8);
px.Size = new Size(35,20);
py.Name = "Py";
py.Text = "";
py.Location = new Point(110,8);
py.Size = new Size(35,20);
v11.Name = "V";
v11.Text = "Vektor 1 (x)";
v11.Location = new Point(10,40);
v11.Size = new Size(100, 20);
v12.Name = "V";
v12.Text = "Vektor 1 (y)";
v12.Location = new Point(10,70);
v12.Size = new Size(100, 20);
v11_koo.Name = "V11";
v11_koo.Text = "";
v11_koo.Location = new Point(90,38);
v11_koo.Size = new Size(55,20);
v12_koo.Name = "V12";
v12_koo.Text = "";
v12_koo.Location = new Point(90,68);
v12_koo.Size = new Size(55, 20);
erg_spz1.Name = "erg";
erg_spz1.Text = "";
erg_spz1.Location = new Point(255,8);
erg_spz1.Size = new Size(35,20);
erg_spz1.Enabled = false;
erg_spz2.Name = "erg";
erg_spz2.Text = "";
erg_spz2.Location = new Point(300,8);
erg_spz2.Size = new Size(35,20);
erg_spz2.Enabled = false;
spitze.Name = "Berechnen";
spitze.Text = "B&erechnen";
spitze.Location = new Point(200,38);
spitze.Size = new Size(100,20);
spitze.Click += new EventHandler(spitze_berechnen);
Controls.Remove(v2x_koo);
Controls.Remove(v2y_koo);
Controls.Remove(ergebnis);
Controls.Remove(ergebn_y);
Controls.Remove(ergebns);
Controls.Remove(v2x);
Controls.Remove(v2y);
Controls.Remove(erg_x);
Controls.Remove(erg_y);
Controls.Remove(v1x_koo);
Controls.Remove(v1y_koo);
Controls.Remove(v1x);
Controls.Remove(v1y);
Controls.Add(erg_spz1);
Controls.Add(erg_spz2);
Controls.Add(p2);
Controls.Add(px);
Controls.Add(py);
Controls.Add(v11_koo);
Controls.Add(v12_koo);
Controls.Add(p);
Controls.Add(v11);
Controls.Add(v12);
Controls.Add(spitze);
}
private void ergebns_click(object sender, EventArgs e){
try{
Console.Write("addire Vektoren ...\n");
string v1_x = v1x_koo.Text;string v1_y = v1y_koo.Text;
string v2_x = v2x_koo.Text;string v2_y = v2y_koo.Text;
decimal v1x = Convert.ToDecimal(v1_x);decimal v1y = Convert.ToDecimal(v1_y);
decimal v2x = Convert.ToDecimal(v2_x);decimal v2y = Convert.ToDecimal(v2_y);
decimal x = 0;decimal y = 0;
x = (v1x + v2x);
y = (v1y + v2y);
ergebnis.Text = x.ToString();
ergebn_y.Text = y.ToString();
}catch (Exception ex){
MessageBox.Show(ex.Message);
}
}
private void spitze_berechnen(object sender, EventArgs e){
try{
Console.Write("Berechne Spitze ...");
decimal px = Convert.ToDecimal(px.Text), py = Convert.ToDecimal(py.Text);
decimal vx = Convert.ToDecimal(v11_koo.Text), vy = Convert.ToDecimal(v12_koo.Text);
decimal x2, y2;
x2 = vx + px;
y2 = vy + py;
erg_spz1.Text = x2.ToString();
erg_spz2.Text = y2.ToString();
}catch (Exception ex){
MessageBox.Show(ex.Message);
}
}
private void help_click(object sender, EventArgs e){
MessageBox.Show("© by Markus Büttner, Januar 2010");
}
}
}