이미지 편집기에서 실행 취소 기능을 만들려고하는데 문제가 생겼습니다. 임 무슨 짓을하려고하면 스택을 통해 각 브러시 스트로크를 누른 다음 stackName.Pop()을 사용하여 취소 할 수 있지만 스택에 브러시 스트로크를 추가 할 수 없습니다. 여기 내 코드는 다음과 같습니다.스택을 통해 브러시 스트로크 밀기?
Stack undoStack = new Stack();
bool mouseDown = false;
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
mouseDown = true;
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (mouseDown == true)
{
int width = 50;
int height = 50 + 1;
int top = e.Location.X - width/2;
int left = e.Location.Y - height/2;
Color theColor = Color.Navy;
SolidBrush brush = new SolidBrush(theColor);
System.Drawing.Graphics graphObj = Graphics.FromHwnd(pictureBox1.Handle);
graphObj.FillEllipse(brush, new Rectangle(top, left, width, height));
undoStack.Push(graphObj);//What Do I push here?
}
}
그러나 스택에 무엇을 넣어야할지 모르겠습니다. 감사합니다 도와주세요!
잘 모르겠습니다. 어떻게해야합니까? undoStack.Push (pictureBox1); ? – Tanner