WEB开发网
开发学院软件开发C语言 [叩响C#之门]写给初学者:滚动条原理 阅读

[叩响C#之门]写给初学者:滚动条原理

 2010-09-30 20:56:08 来源:WEB开发网   
核心提示: 试一试:在滚动窗口中绘图 publicpartialclassForm1:Form{//构造函数publicForm1(){InitializeComponent();//将窗体的背景色设置为白色this.BackColor=Color.White;//当工作区小于300×250像

[叩响C#之门]写给初学者:滚动条原理 试一试:在滚动窗口中绘图

public partial class Form1 : Form 
{ 
  //构造函数 
  public Form1() 
  { 
    InitializeComponent(); 
 
    //将窗体的背景色设置为白色 
    this.BackColor = Color.White; 
    //当工作区小于300×250像素时显示滚动条 
    this.AutoScrollMinSize = new Size(300, 250); 
  } 
 
  //重写OnPaint()方法 
  protected override void OnPaint(PaintEventArgs e) 
  { 
    base.OnPaint(e); 
    Graphics g = e.Graphics; 
    //绘制矩形和椭圆 
    g.FillRectangle(Brushes.LightPink, 0, 0, 200, 150); 
    g.FillEllipse(Brushes.LightGreen, 0, 150, 300, 100); 
  } 
}

运行程序,结果如图17-22所示,出现了滚动条。

但当我们拖动滚动条时,意想不到的事情发生了。窗体并没有绘制椭圆的下半部分,而是又把椭圆的上半部分绘制了一遍(如图17-23所示)。

[叩响C#之门]写给初学者:滚动条原理

图17-22 出现滚动条 图17-23拖动滚动条时又把椭圆的上半部分绘制了一遍

为什么会出现这种情况呢?请把窗口最小化,然后恢复,我们发现窗口中的图像变为初始模样了(如图17-24所示)。

上一页  1 2 3 4  下一页

Tags:叩响 写给 初学者

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接