我现在想做一个打印功能:
界面上有两个个picture控件,picture1作为容器,在picture2绘制曲线,picture2上还有画上去的网格和标尺。
我在执行打印语句.printer的时候只能打印出曲线,网格和标尺没办法打出来,可是我又不想打印出整个界面,应该怎样设计程序才能只打印出曲线和标尺、网格
界面上有两个个picture控件,picture1作为容器,在picture2绘制曲线,picture2上还有画上去的网格和标尺。
我在执行打印语句.printer的时候只能打印出曲线,网格和标尺没办法打出来,可是我又不想打印出整个界面,应该怎样设计程序才能只打印出曲线和标尺、网格
BitBlt Picture1.hdc, 0, 0, picture1.width, picture1.height, hdc, 0, 0, &HCC0020
我试了一下出来的结果是沿着界面的左上角开始截取的图片,为什么截取的不是picture1的图片啊
BitBlt Picture1.hdc, picture1.left, picture1.top, picture1.width, picture1.height, hdc, 0, 0, &HCC0020
看来你不明白参数的含义,这样改一下,看看
BitBlt Picture1.hdc, picture1.left, picture1.top, picture1.width, picture1.……
[/Quote]
这样是不是就把截图加载到picture1上了,
那我用 Printer.PaintPicture Picure1.Image, 0, 0输出到打印机上,出来的效果是只有曲线没有网格和标尺啊
这样解出来的图还是界面左上角开始的,只是加载到picture1中位置改变了
BitBlt Picture3.hdc, me.left+picture1.left, me.top+picture1.top, picture1.width, picture1.height, hdc, 0, 0, &HCC0020Picture3.hdc 是要把截图放在哪
me.left+picture1.left 是横坐标从屏幕的什么位置开始
me.top+picture1.top 是纵坐标从屏幕的什么位置开始
我终于把图弄好了