zoukankan      html  css  js  c++  java
  • 动态添加图片控件例子

    void addPicBox()

    {

        FormWindowControl           c;

        QueryRun                    qr;

        DocuRef         tmpDocuRef;

        Image           tmpImage;

        int             i = 1;

        int             j, maxControl;

        container       tmpBitmap,picCon;

        nj_ItemPhotoTable   nj_ItemPhotoTable,ItemPhotoTable;

        DocuImgs       curDocuimgs;

        ;

        element.lock();

        maxControl = groupPics.controlCount(); //获取groupPics的控件数量

        picCon = connull();

        Select FirstOnly ItemPhotoTable Where ItemPhotoTable.ItemId == Pictorical.ItemId

            &&  ItemPhotoTable.Color == Pictorical.Color;

        qr = this.initQuery(ItemPhotoTable);

        while (qr.next())

        {

            if(qr.changed(tableNum(Docuimgs)))

            {

             curDocuimgs = qr.get(tablenum(Docuimgs));

            }

            tmpDocuRef = qr.get(tablenum(DocuRef));

            tmpBitmap = curDocuimgs.Image;

            if (connull() == tmpBitmap)

                continue;

            tmpImage = new Image();

            if (i > maxControl) //如果groupPics中已有windows控件

                {

                c = groupPics.addControl(FormControlType::Image, "RunTimeControl");

                c.labelPosition(1);

                c.labelAlignment(2);

                c.imagemode(2);

                controlCon += [c.id()];

                }

            else

                c = this.control(conpeek(controlCon,i));//获取这个控件

            c.visible(true);

            c.label(strfmt('%1', tmpDocuRef.Nj_PhotoView));// 图片类型(角度、平面、侧面。。。)

            tmpImage.setData(tmpBitmap);

            c.image(tmpImage);

            picCon += [c.id(), tmpDocuRef.RecId];

            i++;

            }

        for (j = i; j<=maxControl; j++)  //将多余的控件隐藏

            {

            c = this.control(conpeek(controlCon, j));

            c.visible(false);

            }

        this.controlMethodOverload(true);

        element.unLock();

        element.redraw();

    }

  • 相关阅读:
    Java8中利用stream对map集合进行过滤的方法
    安装数据库MySQL,启动时报错 服务没有响应控制功能 的解决办法
    mysql 安装时 失败,提示 因为计算机中丢失 msvcp140.dll
    复习一下数学排列组合公式的原理
    java如何进行排列组合运算
    Redis 分布式锁:使用Set+lua替代 setnx
    深入详解Go的channel底层实现原理【图解】
    MYSQL MVCC实现原理详解
    聚簇索引和非聚簇索引,全在这!!!
    深度解密Go语言之 map
  • 原文地址:https://www.cnblogs.com/perock/p/2119169.html
Copyright © 2011-2022 走看看