Radhad
Erfahrenes Mitglied
Hallo zusammen,
ich habe ein Problem, bei dem ich einfach nicht weiter komme.
Ich möchte bei Bildern mit gedrückter linker Maustatse einen Rahmen ziehen, diesen Teil ausschneiden und als neues Bild darstellen. Allerdings scheitere ich schon beim Rahmen... Bei Google habe ich nicht das gefunden, was ich suche. Ich bin für jede Hilfe dankbar!
Wird die Maus bei gedrückter linker Maustatse nach oben Links bewegt, wird ein Rechteckt gezeichnet bzw. es werden hunderte gezeichnet ^^ Aber in die andere Richtung (unten Rechts). Ich verstehe nicht, wie man es richtig macht.
Gruß Radhad
ich habe ein Problem, bei dem ich einfach nicht weiter komme.
Ich möchte bei Bildern mit gedrückter linker Maustatse einen Rahmen ziehen, diesen Teil ausschneiden und als neues Bild darstellen. Allerdings scheitere ich schon beim Rahmen... Bei Google habe ich nicht das gefunden, was ich suche. Ich bin für jede Hilfe dankbar!
C#:
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
MouseOffset = new Point(-e.X, -e.Y);
MousePos = new Point(e.X, e.Y);
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
MouseRec = e.Location;
pictureBox1.Invalidate();
}
if (e.Button == MouseButtons.Right)
{
IntPtr intPtr;
if ((MouseOffset.Y + e.Y > -1))
intPtr = (IntPtr)SB_LINEUP;
else
intPtr = (IntPtr)SB_LINEDOWN;
SendMessage(panel1.Handle, WM_VSCROLL, intPtr, IntPtr.Zero);
if ((MouseOffset.X + e.X > -1))
intPtr = (IntPtr)SB_LINEUP;
else
intPtr = (IntPtr)SB_LINEDOWN;
SendMessage(panel1.Handle, WM_HSCROLL, intPtr, IntPtr.Zero);
}
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
}
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Rectangle MyRectangle = new Rectangle();
Graphics MyGraphics = Graphics.FromImage(MyImage);
Pen MyPen = new Pen(Color.Black, 2);
if ((MousePos.X - MouseRec.X) > 0)
{
MyRectangle = new Rectangle(MousePos.X, MousePos.Y, MousePos.X - MouseRec.X, MousePos.Y - MouseRec.Y);
}
else
{
MyRectangle = new Rectangle(MouseRec.X, MouseRec.Y, MouseRec.X - MousePos.X, MouseRec.Y - MousePos.Y);
}
MyGraphics.DrawRectangle(MyPen, MyRectangle);
}
Gruß Radhad