xiaobai779 2015-01-26 03:40 采纳率: 0%
浏览 1730

c# 重绘问题 求解答 doc.drawobjectlist 怎么获取

由于刚学习c#,窗口全屏的时候,控件自适应移动位置,在移动的时候出现严重闪烁,自己查了一下,用双缓冲效果不大,所以用重绘,但是代码完全看不懂。。。求解答,doc.drawobjectlist是从哪里获取的?

 Rectangle rect = e.ClipRectangle;
            Bitmap bufferimage = new Bitmap(this.Width, this.Height);
            Graphics g = Graphics.FromImage(bufferimage);
            g.Clear(this.BackColor);
            g.SmoothingMode = SmoothingMode.HighQuality; //高质量
            g.PixelOffsetMode = PixelOffsetMode.HighQuality; //高像素偏移质量
            foreach (IShape drawobject in doc.drawObjectList)
            {
                if (rect.IntersectsWith(drawobject.Rect))
                {
                    drawobject.Draw(g);
                    if (drawobject.TrackerState == config.Module.Core.TrackerState.Selected
                        && this.CurrentOperator == Enum.Operator.Transfrom)//仅当编辑节点操作时显示图元热点
                    {
                        drawobject.DrawTracker(g);
                    }
                }

            }
            using (Graphics tg = e.Graphics)
            {
                tg.DrawImage(bufferimage, 0, 0);  //把画布贴到画面上
            }
  • 写回答

2条回答 默认 最新

  • threenewbee 2015-01-26 04:55
    关注

    drawobjectlist是示例代码中文档中画布上的图形对象,doc和drawObjectList都是为了演示而写的。

    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘