我对C#的画图语法不太熟悉,主要想实现下面功能,
1、做一个类,类里面动态产生一个Panel,同时以Panel为包容器,在Panel中动态产生label,picturebox,panel等等很多控件,按照一定的比例位置放置,在其它程序中通过对类的的调用,传递参数,在类中动态产生的picturebox、label等中可以进行画线、填充矩形等。
2、生成类的时候可以按照比例自动调整图形的相对位置。多谢了,马上要交工!!!

解决方案 »

  1.   

    没有现成代码,不过可以帮你up!
    曾经做过二维制图程序
    我是用ATL实现的底层绘制接口,调用GDI+,然后在C#中调用dll,配置用户界面并调用绘制。
    步骤可以如下:
    实现图形设备接口(GDI)进行底层绘制
    定义用户层,包括用户窗口接口,控件等。
    将上面两层综合成图形窗口和事件处理器。
      

  2.   

    多谢,但能不能清楚点呀,我对C#不是特别熟悉,以前是拿VB6写的一个控件,现在必须用C#,觉得难度好大。
      

  3.   

    画线填充矩形挺好实现的 不过在label上画。Bitmap imageTemp = new Bitmap(100,100);
    Graphics g = Graphics.FromImage(imageTemp);
    g.FillEllipse(new SolidBrush(Color.Blue), 50, 50, 1, 1);
    image.Save("c:\\1.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);//上面的代码可以画一个点,其他的你看看帮助就知道了,网上也有好多啊,baidu上搜搜
      

  4.   

    需要把Panel添加到form中,这是侯发现有两个问题,画的线、点有时候有时候没有,是否paint事件有特殊处理?
      

  5.   

    to 生成类的时候可以按照比例自动调整图形的相对位置你需要在初始化的时候知道当前窗体或者当前容器的尺寸,然后你在类中的paint事件中根据尺寸来订制大小和位置。
      

  6.   

    谢谢了,尺寸还可以,就是在类里面panel的paint事件不太会用,类里面panel的paint事件在调用中如何作用呀?