Click here to Skip to main content
15,892,674 members
Home / Discussions / C#
   

C#

 
AnswerRe: Can not compare a file and same file stored in mysql - sha256 Pin
Mycroft Holmes29-Apr-20 12:18
professionalMycroft Holmes29-Apr-20 12:18 
GeneralRe: Can not compare a file and same file stored in mysql - sha256 Pin
wilcodk30-Apr-20 1:28
wilcodk30-Apr-20 1:28 
AnswerRe: Can not compare a file and same file stored in mysql - sha256 Pin
Eddy Vluggen30-Apr-20 6:34
professionalEddy Vluggen30-Apr-20 6:34 
QuestionCompare string time to timer time (noobie) Pin
Member 1481029228-Apr-20 5:36
Member 1481029228-Apr-20 5:36 
AnswerRe: Compare string time to timer time (noobie) Pin
Gerry Schmitz28-Apr-20 6:48
mveGerry Schmitz28-Apr-20 6:48 
QuestionResize and move a drawn rectangle in win forms Pin
Member 1223285027-Apr-20 12:23
Member 1223285027-Apr-20 12:23 
AnswerRe: Resize and move a drawn rectangle in win forms Pin
Luc Pattyn27-Apr-20 13:17
sitebuilderLuc Pattyn27-Apr-20 13:17 
GeneralRe: Resize and move a drawn rectangle in win forms Pin
Member 1223285027-Apr-20 19:38
Member 1223285027-Apr-20 19:38 
Hi,
Your notes are helpful to help where to look in my code, but still I can't get it work OMG | :OMG:
I started from scratch and made the first step is just to move the rectangle, my issue now is to calculate the new starting XY, but it seems resize the rectangle when mouseUp:
C#
<pre>private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
	if (rect.Contains(e.Location))
		this.Cursor = Cursors.SizeAll;
	else
		this.Cursor = Cursors.Default;

	if (m_mouseDown && rect.Contains(e.Location))
	{
		if (e.X > StartXY.X)
		{
			EndXY.X += e.X - StartXY.X;
			EndXY.Y += e.Y - StartXY.Y;
		}
		else
		{
			EndXY.X += Math.Abs(e.X - StartXY.X);
			EndXY.Y += Math.Abs(e.Y - StartXY.Y);
		}

		StartXY = e.Location;
		Console.WriteLine("pictureBox1_MouseMove");
	}

	if (m_mouseDown && !rect.Contains(e.Location))
	{
		EndXY = e.Location;
	}

	Invalidate();
}



Complete code:
C#
public partial class Form1 : Form
{
    Rectangle rect;
    Point StartXY;
    Point EndXY;

    int x = 0;
    int y = 0;
    int height = 0;
    int width = 0;

    bool m_mouseDown = false;
    bool m_movingRect = false;


    Pen rectPen = new Pen(Color.Red, 1);

    public Form1()
    {
        InitializeComponent();
        this.DoubleBuffered = true;
    }

    private void Form1_Load(object sender, EventArgs e)
    {

    }

    private void pictureBox1_Paint(object sender, PaintEventArgs e)
    {
        Graphics gObj = e.Graphics;

        x = Math.Min(StartXY.X, EndXY.X);
        y = Math.Min(StartXY.Y, EndXY.Y);

        height = Math.Abs(StartXY.X - EndXY.X);
        width = Math.Abs(StartXY.Y - EndXY.Y);

        rect = new Rectangle(x, y, height, width);
        rectPen.DashStyle = DashStyle.Dash;
        gObj.DrawRectangle(rectPen, rect);
    }

    private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
    {
        m_mouseDown = true;

        // Moving rectangle
        if (rect.Contains(e.Location))
        {
            m_movingRect = true;
            Console.WriteLine("m_mouseDown");
        }
        else
        {
            StartXY = e.Location;
        }
    }

    private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
    {
        if (rect.Contains(e.Location))
            this.Cursor = Cursors.SizeAll;
        else
            this.Cursor = Cursors.Default;

        if (m_mouseDown && rect.Contains(e.Location))
        {
            if (e.X > StartXY.X)
            {
                EndXY.X += e.X - StartXY.X;
                EndXY.Y += e.Y - StartXY.Y;
            }
            else
            {
                EndXY.X += Math.Abs(e.X - StartXY.X);
                EndXY.Y += Math.Abs(e.Y - StartXY.Y);
            }

            StartXY = e.Location;
            Console.WriteLine("pictureBox1_MouseMove");
        }

        if (m_mouseDown && !rect.Contains(e.Location))
        {
            EndXY = e.Location;
        }

        Invalidate();
    }

    private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
    {
        if (!m_movingRect)
        {
            EndXY = e.Location;
        }

        m_mouseDown = false;
        m_movingRect = false;
        Invalidate();
    }
}

GeneralRe: Resize and move a drawn rectangle in win forms Pin
Luc Pattyn28-Apr-20 4:50
sitebuilderLuc Pattyn28-Apr-20 4:50 
GeneralRe: Resize and move a drawn rectangle in win forms Pin
Member 1223285028-Apr-20 17:56
Member 1223285028-Apr-20 17:56 
GeneralRe: Resize and move a drawn rectangle in win forms Pin
Luc Pattyn29-Apr-20 2:30
sitebuilderLuc Pattyn29-Apr-20 2:30 
QuestionDate compare Pin
Carlos5827-Apr-20 10:42
Carlos5827-Apr-20 10:42 
AnswerRe: Date compare Pin
Luc Pattyn27-Apr-20 11:00
sitebuilderLuc Pattyn27-Apr-20 11:00 
GeneralRe: Date compare Pin
Carlos5827-Apr-20 12:31
Carlos5827-Apr-20 12:31 
GeneralRe: Date compare Pin
Luc Pattyn27-Apr-20 12:48
sitebuilderLuc Pattyn27-Apr-20 12:48 
GeneralRe: Date compare Pin
Carlos5828-Apr-20 2:19
Carlos5828-Apr-20 2:19 
GeneralRe: Date compare Pin
Luc Pattyn28-Apr-20 2:24
sitebuilderLuc Pattyn28-Apr-20 2:24 
SuggestionRe: Date compare Pin
Richard Deeming28-Apr-20 0:40
mveRichard Deeming28-Apr-20 0:40 
AnswerRe: Date compare Pin
Carlos5828-Apr-20 2:23
Carlos5828-Apr-20 2:23 
QuestionRename files in WinScp Directory using C# Pin
Sriram Valluri27-Apr-20 1:13
Sriram Valluri27-Apr-20 1:13 
AnswerRe: Rename files in WinScp Directory using C# Pin
ZurdoDev27-Apr-20 1:21
professionalZurdoDev27-Apr-20 1:21 
GeneralRe: Rename files in WinScp Directory using C# Pin
Sriram Valluri27-Apr-20 2:15
Sriram Valluri27-Apr-20 2:15 
GeneralRe: Rename files in WinScp Directory using C# Pin
ZurdoDev27-Apr-20 2:27
professionalZurdoDev27-Apr-20 2:27 
AnswerRe: Rename files in WinScp Directory using C# Pin
Jin Vincent Necesario27-Apr-20 2:36
professionalJin Vincent Necesario27-Apr-20 2:36 
GeneralRe: Rename files in WinScp Directory using C# Pin
Sriram Valluri27-Apr-20 8:07
Sriram Valluri27-Apr-20 8:07 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.