当前位置:编程学习 > C#/ASP.NET >>

GDI+绘图问题

我在一个panel中创建了一个位图,通过GDI+在位图上画一些线段,但是当panel出现滚动条的时候,超过窗口的部分就没办法画了,我根绝窗口的大小,重新生成位图,但是当拖动滚动条的时候,超出窗口的部分还是没有办易做图常显示,调试的时候,发现位图的大小并没有改变,这是什么造成的呢?求助~~~ GDI+ 位图大小 --------------------编程问答-------------------- 不明白,超出窗口了,应该看不到了,那还画它干嘛 --------------------编程问答--------------------
引用 1 楼 bdmh 的回复:
不明白,超出窗口了,应该看不到了,那还画它干嘛


可以拖动滚动条让它显示在窗口中,但是拖动之后只有一开始的那些有,超出窗口的部分就显示不出来,我估计是位图大小没改变,所以只在panel那么大的区域上画图了 --------------------编程问答--------------------
引用 1 楼 bdmh 的回复:
不明白,超出窗口了,应该看不到了,那还画它干嘛


这样说吧,现在panel中有两个控件,我在两个控件中绘制一条直线。当我把一个控件拖到panel外面的时候,会自动出现滚动条,这个时候在画线的话,只有panel内的部分有连线,拖动滚动条之后,一开始不在panel内的区域中就不会有连线了。不知道这样说是否好理解一些? --------------------编程问答-------------------- 需要截取可视区域的直线绘制,每次拖动都要从新绘制,这样你无论你怎么拖动都能看到直线 --------------------编程问答--------------------
引用 4 楼 flysnowjava 的回复:
需要截取可视区域的直线绘制,每次拖动都要从新绘制,这样你无论你怎么拖动都能看到直线


但是我最后想生成一个bmp的格式,所以我想不断的增大位图的大小,这个可以做到吗? --------------------编程问答--------------------
引用 5 楼 ddxxll2008 的回复:
引用 4 楼 flysnowjava 的回复:
需要截取可视区域的直线绘制,每次拖动都要从新绘制,这样你无论你怎么拖动都能看到直线

但是我最后想生成一个bmp的格式,所以我想不断的增大位图的大小,这个可以做到吗?

可以,超过了他就不会画了,除非你在拖动滚动条的里面有重回的方法~ --------------------编程问答--------------------
引用 6 楼 wjfwd2010 的回复:
引用 5 楼 ddxxll2008 的回复:引用 4 楼 flysnowjava 的回复:
需要截取可视区域的直线绘制,每次拖动都要从新绘制,这样你无论你怎么拖动都能看到直线

但是我最后想生成一个bmp的格式,所以我想不断的增大位图的大小,这个可以做到吗?
可以,超过了他就不会画了,除非你在拖动滚动条的里面有重回的方法~


是要出发滚动条的事件,拖动滚动条的时候重新画图吗?那滚动条滚动的位置通过什么可以得到呢? --------------------编程问答-------------------- 你调用滚动条以后,每滚动一次就会导致界面重绘,我也不知道你代码咋写的你绘制图形的方法是在重绘事件里写的么? --------------------编程问答--------------------
引用 8 楼 wjfwd2010 的回复:
你调用滚动条以后,每滚动一次就会导致界面重绘,我也不知道你代码咋写的你绘制图形的方法是在重绘事件里写的么?


不是,我是创建了一个位图,直接在位图上绘制的,所以出现滚动条之后,需要改变位图的大小,然后在新的位图上把之前的图像再绘制一遍。这个方法可行吗? --------------------编程问答--------------------
引用 9 楼 ddxxll2008 的回复:
引用 8 楼 wjfwd2010 的回复:
你调用滚动条以后,每滚动一次就会导致界面重绘,我也不知道你代码咋写的你绘制图形的方法是在重绘事件里写的么?

不是,我是创建了一个位图,直接在位图上绘制的,所以出现滚动条之后,需要改变位图的大小,然后在新的位图上把之前的图像再绘制一遍。这个方法可行吗?

试试呗
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,