我在一个继承自usercontrol的控件中画了一系列的矩形框,已经超出了控件能显示的范围,而我又想把他们都显示出来,我就加了下面和右面的滚动条,可是执行后没有反应,觉得应该写点什么代码,把控件里图形与滚动条关联起来,那我该怎么写呢?
问题补充:
我已经把控件的AutoScroll设置为TRUE了,可是还是在超出控件的显示范围后仍然不会出现滚动条!
我已经知道是为什么会出现这种情况了:超出范围还是没有滚动条的原因是,windows不知道它需要滚动条,首先要确定文档区域的大小:
this.AutoScrollMinSize = new System.Drawing.Size(1000, 2000);
现在还不算完,还要转换一下坐标:
Graphics g=this.CreateGraphics();
Size scrolloffset = new Size(this.AutoScrollPosition);
Size rectSize = new Size(MyFrame_Width, MyFrame_Hight);
Pen pen = new Pen(My_FramColor);
Brush brush = new SolidBrush(My_FillFrameColor);
Rectangle rect = new Rectangle(p + scrolloffset, rectSize);
g.FillRectangle(brush,rect);
g.DrawRectangle(pen, rect);
这个时候,滚动条的设置才算完整。
http://topic.csdn.net/u/20090803/09/5d4d9a17-d12b-4b28-bfd0-42bfe671cfcd.html?seed=559958975&r=58883196#r_58883196
三丫头
|
初学一级
|
园豆:
185
提问于:2009-08-02 19:14