panel1的滚动条,我鼠标按住滚动条,拉滚动条的时候,为什么画面没有动,要等鼠标松了之后,才动
我需要在拉的过程中,画面就要动

解决方案 »

  1.   

    重载Panel1的 Scroll 事件,
    private void panel1_Scroll(object sender, ScrollEventArgs e)
    在鼠标拖动的时候,e.Type将是 ScrollEventType.ThumbTrack
    而鼠标放开的时候  e.Type将是 ScrollEventType.ThumbPosition如果你的电脑设置了 “拖动时显示窗口内容”,则在这两个事件都会产生窗口重绘,否则,只会在放开鼠标时重绘。解决办法是,在Scroll事件时,强制控件刷新。
      
        private void panel1_Scroll(object sender, ScrollEventArgs e)
            {
                panel1.Invalidate();   
            }
      

  2.   

    滚动事件scroll{
        private void panel1_Scroll(object sender, ScrollEventArgs e)
            {
                panel1.Invalidate();   
            }
      

  3.   

    滚动事件  scroll panel1.Invalidate();   
      

  4.   

    我试了:
    private void panel1_Scroll(object sender, ScrollEventArgs e)
            {
                panel1.Invalidate();   
            }
    只是看到画面在不断闪动,估计应该是重绘,不过,画面并没从左至右、从右至左的移动,还是要等到鼠标松了之后,才看到最后的效果
      

  5.   

    试下这个代码 
      int lastTick = 0;
            private void panel1_Scroll(object sender, ScrollEventArgs e)
            {
                int tick = Environment.TickCount;            if (Math.Abs(tick - lastTick) > 1000)
                {
                    lastTick = tick;   
                    panel1.Invalidate();
                    
                    Console.Beep(300, 10);
                }
            }