[問題] GDI繪圖問題
關於繪圖問題,我想要在繪圖的過程中看見我所編輯的形狀,
例如:畫一條直線,滑鼠按下去時開始編輯,在滑鼠移動的過程中,
我可以看見線條的形狀隨著我的滑鼠移動而改變,當我的滑鼠放開時,
才真正決正圖形的樣式,繪制在表單上。以下是我的程式碼:
Pen m_pen = new Pen(Color.Red, 2);
Graphics g = null;
int startx = 0;
int starty = 0;
int endx = 0;
int endy = 0;
bool isdraw = false;
public Form1()
{
InitializeComponent();
m_pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dash;//設置
虛線
}
private void panel1_MouseDown(object sender, MouseEventArgs e)
{
//開始點
startx = e.X;
starty = e.Y;
isdraw = true;
}
private void panel1_MouseMove(object sender, MouseEventArgs e)
{
//開始畫
if (isdraw)
{
panel1.Refresh();
endx = e.X;
endy = e.Y;
g = panel1.CreateGraphics();
g.DrawLine(m_pen, startx, starty, endx, endy);
}
}
private void panel1_MouseUp(object sender, MouseEventArgs e)
{
if (isdraw)
{
g.DrawLine(m_pen, startx, starty, endx, endy);
}
}
雖然成功了,但產生一個問題,就是每當我的滑鼠按下左鍵時,
圖形就會被清空重繪,> <,有沒有什麼好方法可以解決此問題?
另外
如何才能呈現上一步和下一步的動作?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.25.118.83
※ 編輯: lsmptt 來自: 163.25.118.83 (12/08 11:23)
→
12/08 11:36, , 1F
12/08 11:36, 1F
→
12/08 11:37, , 2F
12/08 11:37, 2F
推
12/08 20:41, , 3F
12/08 20:41, 3F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
問題
1
3