zoukankan      html  css  js  c++  java
  • XtraReport动态生成控件时的位置问题

    1.问题:在BeforePrint生成XRLabel时发现用同样的PointF给LocationF赋值,和在设计界面拖放上的XRLabel位置不同,此时的XtraReport的ReportUnit为十分之一毫米,而不是默认的百分之一英寸;

    2.原因:拖放的XRLabel的LocationF,会根据当前的ReportUnit转换为默认的百分之一英寸,所以即使两个坐标相同,也会因为自动转换的问题,两个控件不在同一位置;

    3.解决方案:动态生成控件的坐标值 /2.54F,即由十分之毫米转为百分之一英寸;

    4.拓展:PoinF的数值是百分之一英寸,根据当前的Dpi,Windows默认为96,即一英寸96点,所以绘制一英寸的长,即100(百分之一英寸),绘制的实际长度为100/96*25.4=26.4583毫米

      private void button1_Click(object sender, EventArgs e)
            {
                Graphics g = Graphics.FromHwnd(IntPtr.Zero);
                Pen MyPen = new Pen(Color.Blue, 2);
                int x = 100;
                g.DrawLine(MyPen, new Point(200, 200), new Point(200, 100));
            }
    

      

  • 相关阅读:
    C#基础
    C#基础
    Sqlserver数据库备份和还原
    C#基础
    Python3学习笔记4
    Python3学习笔记3
    调用接口Post xml和json数据的通用方法
    Python3学习笔记2
    Python3学习笔记1
    常见的PHP函数代码性能对比
  • 原文地址:https://www.cnblogs.com/whwjava/p/10671987.html
Copyright © 2011-2022 走看看