在做一个小程序,和毕设相关,遇到问题了来请教请教大家:)
如图中,想在空白的form上可以画工具栏上所示的直线、三角形、矩形的同时,在左侧的panel控件中也可以实现画图。目前在form中可实现:
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawImage(_bufferBmp, 0, 0);
}
在panel上可作图如何实现呢?求助,谢谢各位了
5 个解决方案
#1
panel也有onpaint事件啊
#2
要么你同时控制两个组件的onpaint事件,要么你自己在内存new一个bitmap,在上面画,然后将它设置为两个组件的背景图
#3
不懂,不过,楼主的这个界面真的不错啊
#4
重载PANEL的ONPAINT时间,还有MOUSEMOVE,MOUSEDOWN,MOUSEUP事件
#5
就写两个paint事件不就行了,form.paint和panel.paint,点工具栏化什么线时,用form.invalidate()和panel.invalidate()。
#1
panel也有onpaint事件啊
#2
要么你同时控制两个组件的onpaint事件,要么你自己在内存new一个bitmap,在上面画,然后将它设置为两个组件的背景图
#3
不懂,不过,楼主的这个界面真的不错啊
#4
重载PANEL的ONPAINT时间,还有MOUSEMOVE,MOUSEDOWN,MOUSEUP事件
#5
就写两个paint事件不就行了,form.paint和panel.paint,点工具栏化什么线时,用form.invalidate()和panel.invalidate()。