我用代码在PICTURE控件中画图表,因图表太大超出PICTURE显示范围未显示完全。当我用SAVEPICTURE 保存自画的图表时发现只能保存PICTURE控件中显示的内容,PICTURE控件中未显示的图形没有保存,请问我怎样保存完整的图形,包括在PICTURE控件中画了但未完全显示的图形

解决方案 »

  1.   

    1.
    可以变通一下
    将PictureBox的AutoRedraw设为True
    然后调整PictureBox的大小
    最后用“SavePicture Picture1.Image, FileName”保存图片2.
    用CreateCompatibleBitmap创建内存位图
    再调用API绘图
      

  2.   

    不画在框内的不知道能不能保存,试一试这个
    ------------------------------------------------------
    SavePicture 语句
       从对象或控件(如果有一个与其相关)的 Picture 或 Image 属性中将图形保存到文件中。语法SavePicture picture, stringexpressionSavePicture 语句的语法包含下面部分:参数 描述 
    picture 产生图形文件的 PictureBox 控件或 Image 控件。 
    stringexpression 欲保存的图形文件名。 
    说明无论在设计时还是运行时图形从文件加载到对象的 Picture 属性,而且它是位图、图标、元文件或增强元文件,则图形将以原始文件同样的格式保存。如果它是 GIF 或 JPEG 文件,则将保存为位图文件。Image 属性中的图形总是以位图的格式保存而不管其原始格式。
      

  3.   

    SavePicture Picture1.Picture, "c:\temp.jpg"  '保存完整的图片(不管是否能完全显示)
    SavePicture Picture1.Image, "c:\temp.jpg"   '保存显示的图片
      

  4.   

    TO faysky2 :
       SavePicture Picture1.Picture, "c:\temp.jpg"只能保存装入的图形,而不能保存自画的图形
      

  5.   

    还有VB不支持保存为jpg格式,只支持保存为bmp格式吧.
      

  6.   

    SavePicture Picture1.Image必须要使用Image才可以保存
      

  7.   

    SavePicture picture1.picture,"c:\temp"
    SavePicture image1.picture,"c:\temp"
    这两个好像都不能保存jpg 格式的文件,只能保存bmp格式的。对不?
      

  8.   

    vb默认只能保存为BMP格式,
    比较简单的方法是试用GDI+来保存其他格式
      

  9.   

    PICTURE控件的显示范围是65536,应该来说已经足够图表类图片了,就象一楼说的那样,真的要是超过了,适当缩小是无妨的