图形重绘问题? 把菜单命令中的绘图代码加到onpaint中 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 加到onpaint中是可以,可是我不想窗体一启动绘图代码就执行,只有执行菜单命令后才执行. 菜单部份代码简单如下: private void menuItem3_Click(object sender, System.EventArgs e) { Graphics cjg=this.CreateGraphics(); Pen cjpen=new Pen(Color.Red); cjg.drawline(cjpen,100,100,200,200); } 我试了你的代码没错啊,除了cjg.drawline(cjpen,100,100,200,200);的那个d要大写……cjg.DrawLine(cjpen,100,100,200,200); 不知道你这个程序要实现什么功能一般画图软件是这样的:定义一个接口(IGraphicsObject)(抽象画图的一些属性,方法等,比如有Bounds属性,Draw(Graphics g)方法等)然后有一个ArrayList对象list在菜单命令里 IGraphicsObject o = new Line();//Line画线的对象,实现了IGraphicsObject接口 list->Add(o);在onpaint里面 foreach(IGraphicsObject o in list) { o.Draw(e.Graphics); } 我在子窗体里加了个pictureBox1,并在里面绘图(直线)但打开主窗口的菜单后,被菜单挡了的直线都不见了我请教过老师,他说是窗口没重绘我试了很久,但也没弄对请哪位高手也给解决一下 请问StackPanel里有一些的的button,如何设置让这些button之间有一定的空隙呢? 怎么统计电脑关机 重启 注销的次数 绘制cad中的样条曲线,求高手!! 父子窗体 提问!!!多线程访问变量的安全问题! 不解之迷 用C#如何写出象VS.NET一样的界面? 关于.net插件开发中的一个问题 xml 怎么转换成json 格式的? (help)Socket通讯问题 网吧计时收费系统的数据库如何设计阿? 请教高手,在ASP.NET里面怎么实现单元格里的内容自动换行?
菜单部份代码简单如下:
private void menuItem3_Click(object sender, System.EventArgs e)
{
Graphics cjg=this.CreateGraphics();
Pen cjpen=new Pen(Color.Red);
cjg.drawline(cjpen,100,100,200,200);
}
cjg.drawline(cjpen,100,100,200,200);的那个d要大写……cjg.DrawLine(cjpen,100,100,200,200);
一般画图软件是这样的:
定义一个接口(IGraphicsObject)
(抽象画图的一些属性,方法等,比如有Bounds属性,Draw(Graphics g)方法等)
然后有一个ArrayList对象list
在菜单命令里
IGraphicsObject o = new Line();//Line画线的对象,实现了IGraphicsObject接口
list->Add(o);
在onpaint里面
foreach(IGraphicsObject o in list)
{
o.Draw(e.Graphics);
}
但打开主窗口的菜单后,被菜单挡了的直线都不见了
我请教过老师,他说是窗口没重绘
我试了很久,但也没弄对
请哪位高手也给解决一下