zoukankan      html  css  js  c++  java
  • ChinaCock界面控件介绍-CCLoadingIndicator

    这是一个显示等待状态的控件,当在线程中执行一个稍长时间的任务,需要显示一个等待过程,免得让用户不知app在做什么?避免用户寂寞。

    先看看这个控件的属性说明:

    BackgroundTransparency:指这个控件显示时,背景是否透明,默认False,当设置为False时,等待界面会锁定背后的控件,不允许用户操作。很多时间,我们需要设置他为False,防止app在执行查询时,用户还会有其他的操作。

    Fill:显示控件的填充颜色

    Height:高度

    LoadingBitmap:显示的图片,默认情况下,不设置此图片,显示控件会显示默认的,效率已经非常好了。但我们可以显示自己的图片,比如app的Logo,我试着用100*100透明Png图片,效率也非常棒。

    LoadingBitmapOpaqueColor:显示图片的颜色,为了app的整体风格统一,你可以按app的主体色来设置,设置后,图片会按这个颜色来显示

    LoadingText:显示等待状态时的文字,比如:正在查询数据...

    Stroke:等待控件的边框设置,可以设置颜色等

    TextSettings:LoadingText的字体设置

    现在,看看具体的应用案例:

    由于这是一个不可视控件,在IDE中拖放一个到MainForm上,然后设置其属性,定制其外观。然后呢,我们可以做两个全局方法,一个是显示等待状态,一个是隐藏等待界面。

    procedure ShowProgressDialog(msg:string);
    begin
      mainform.CCLoadingIndicator1.LoadingText:=msg;
      mainform.CCLoadingIndicator1.ShowLoadingIndicator;
    end;
    
    procedure HideProgressDialog;
    begin
      MainForm.CCLoadingIndicator1.HideLoadingIndicator;
    end;

    调用过程:

    procedure TCLInfo.PrintPhoto(ID: string);
    begin
    
      ShowProgressDialog('正在生成打印内容...');
      Scheduler.Run(
                    procedure
                    begin
                       ...//执行长时间查询 
                    end)
               .SynchronizedAfterRun(
                                      procedure
                                      begin
                                        HideProgressDialog;
                                        if r = 'ok' then
                                        begin
                                          PrintPDF(fn)
                                        end
                                        else
                                          fmx.Dialogs.ShowMessage('无法打印:' + r);
                                      end)
               .Activate;
    end;

    上段代码使用了kbmMW的Scheduer对象,在线程中执行查询任务,从服务端返回生成的PDF文件,完成后,在主线程中打印这个文件。

    这是默认图片显示的效果:

     

    这是使用图片显示的效果:

    如果你对ChinaCock感兴趣,可以加入QQ群:223717588。作者的QQ:591361557

    作者是收费的,功能不断增加,价格也在上涨,但对于老用户免费升级,趁早出手,实惠多多!

  • 相关阅读:
    java多线程调试
    nginx学习网站收录
    eclispe使用
    网站收集
    《TCP/IP详解卷1:协议》——第6章 ICMP:Internet控制报文协议(转载)
    深入理解计算机系统——第12章:用信号量同步线程
    《TCP/IP详解卷1:协议》——第5章 RARP:逆地址解析协议(转载)
    YYHS-Floor it(递推+矩阵乘法+快速幂)
    YYHS-数列
    (转)Tarjan应用
  • 原文地址:https://www.cnblogs.com/kinglandsoft/p/10275456.html
Copyright © 2011-2022 走看看