hm... ja das ist besser, aber ganz geht meine strategie nicht aus, leider. Also ich sag einfach mal was ich vor hatte.
Ich möchte zur lauf zeit mehre pictureboxes erzeugen die mit einer grundform gefüllt sind.
nun möchte ich aber das wenn die maus über eine picturebox geht das sie gekippt wird.
Mein quelltext sieht so aus, bisher...
Delphi-Quellcode:
procedure TWinForm.MenuItem7_Click(sender: System.Object; e: System.EventArgs);
begin
picbox := system.Windows.Forms.PictureBox.Create;
picbox.Name := 'picturebox2';
picbox.Bounds := rectangle.Create(80,20,70,70);
self.Controls.Add(picbox);
Include(Self.Picbox.Paint, Self.grafik);
Include(Self.Picbox.MouseEnter, self.maus_rein);
Include(Self.Picbox.MouseLeave, Self.maus_raus);
end;
procedure TWinForm.PictureBox1_MouseLeave(sender: System.Object; e: System.EventArgs);
begin
self.maus_raus(sender, e);
end;
procedure TWinForm.PictureBox1_MouseEnter(sender: System.Object; e: System.EventArgs);
begin
self.maus_rein(sender, e);
end;
procedure TWinForm.PictureBox1_Paint(sender: System.Object; e: System.Windows.Forms.PaintEventArgs);
begin
self.grafik(sender, e);
end;
procedure twinform.maus_raus(sender: System.Object; e: System.EventArgs);
begin
self.Name := (sender as control).Name;
winkel := 0;
self.Refresh;
self.Invalidate;
end;
procedure twinform.maus_rein(sender: System.Object; e: System.EventArgs);
begin
self.Name := (sender as control).Name;
winkel := -15;
self.Refresh;
self.Invalidate;
end;
procedure twinform.grafik(sender: System.Object; e: System.Windows.Forms.PaintEventArgs);
var rec: rectangle;
rec2: rectangle;
begin
e.Graphics.TranslateTransform(0,0);
e.Graphics.Clear(self.BackColor);
e.Graphics.TranslateTransform(30,30);
e.Graphics.RotateTransform(winkel);
rec := rectangle.Create(-22,-22,43,43);
rec2 := rectangle.Create(-20,-20,43,43);
e.Graphics.FillRectangle(solidbrush.Create(color.black),rec2);
e.Graphics.FillRectangle(solidbrush.Create(color.gray),rec);
e.Graphics.DrawRectangle(pen.create(color.Black),rec);
end;
komischer weiße wenn eine neue picturebox erzeugt wird drehen sich beide wenn man mit der maus über eines geht. Ich glaube weil ich mit dem include beim erzeugen das mit dem sender nicht übergeben habe???
thx bis hier, find ich echt cool hier...