zoukankan      html  css  js  c++  java
  • How to resolve DynamicHeight problem in Morphx report[X++]

    For set dynamic height for controls in report

    on executeSection method:

    method 01

        real                        maxHeight;
        str                         maxStrValue = this.maxStrControlName();
        ReportStringControl         maxStrControl = element.design().controlName("maxStrControlName");
    ;
        maxHeight= maxStrControl.heightOfWordWrappedString100mm(maxStrValue);
    
        if (maxHeight!= maxStrControl.height100mm())         
        {
            maxStrControl.height100mm(maxHeight);
        }


    or same in char:

    method 02

        int    maxHeightChar;
    ;  
    
        maxHeightChar = maxStrControl.widthOfString100mm(maxStrValue) / maxStrControl.width100mm() + 1;     
    
        maxStrControl.height(maxHeightChar , Units::CHAR);

    for example

    public void executeSection()
    {
        //CUS Changed on 09 Oct 2013 at 12:28:55 by Jimmy Xie TECTURA LL000260 Begin
        ReportStringControl maxStrControl = element.design().controlName("commodityNo");
        str                 maxStrValue = this.commodityNo();
        int                 maxHeight = maxStrControl.widthOfString100mm(maxStrValue) / maxStrControl.width100mm() + 2;
    ;
        /* method 1
        maxHeight = maxStrControl.heightOfWordWrappedString100mm(maxStrValue);
        if (maxHeight != maxStrControl.height100mm())
            maxStrControl.height100mm(maxHeight);
        */
    
        //commodityNo.height(maxHeight, Units::char);
        // method 2
        LineNumStr.height(maxHeight, Units::char);
        ItemName.height(maxHeight, Units::char);
        QtyStr.height(maxHeight, Units::char);
        SalesPriceStr.height(maxHeight, Units::char);
        netSalesPriceStr.height(maxHeight, Units::char);
        amountStr.height(maxHeight, Units::char);
        //CUS Changed on 09 Oct 2013 at 12:28:55 by Jimmy Xie TECTURA LL000260 End
    
        serialNumber++;
        super();
        totalTaxValue  += CustInvoiceTrans.lineAmountInclTax();//TaxAmount;
        totalQty       += CustInvoiceTrans.Qty;
    }
  • 相关阅读:
    【Linux高频命令专题(7)】rm
    【Linux高频命令专题(6)】mkdir
    【mongoDB运维篇①】用户管理
    【Linux高频命令专题(5)】rmdir
    【mongoDB中级篇②】索引与expain
    【mongoDB中级篇①】游标cursor
    Lua中的字符串函数库
    ngx_lua 随笔
    Nginx与Lua
    MAC 上搭建lua
  • 原文地址:https://www.cnblogs.com/Fandyx/p/3358926.html
Copyright © 2011-2022 走看看