• uniGUI为TreeGrid定制Mask


    function beforedeselect(sender, record, index, eOpts)
    {
        if(record.data.leaf){sender.uform.mask("正在检索数据中...");};
    }

    当点击TreeGrid时,我要做一个长时间的查询,这时候需要显示Mask,避免用户重复操作界面。象上面这样,用js代码显示mask。

    当执行完查询时,隐藏Mask。

    procedure TUserYzcFrame.UniTimer1Timer(Sender: TObject);
    begin
      UniTimer1.Enabled := False; // 先关定时器
      Open;//执行长时间的查询
      //隐藏mask。
      UniSession.AddJS(MainForm.WebForm.JSForm.JSName+'.unmask(); ');
    end;

    感谢朋友风轻云淡告诉这个方法!

    实际上,uniButton,uniEdit等控件都有一个ScreenMask属性,通过这个属性,就可以实现上面的效果:

    ScreenMask.Enabled:=True;

    当点击一个按钮,执行长时间的查询的时候,就会在开始查询前显示Mask,执行完成后,隐藏Mask,不用写一行代码。可惜TreeGrid则没有这个属性,希望官方能加入这个属性就好了。

  • 相关阅读:
    121. Best Time to Buy and Sell Stock
    玩转算法2.3常见的算法复杂度分析
    数组中的逆序对
    一些基本的代码模板
    230. Kth Smallest Element in a BST
    42. Trapping Rain Water
    api token
    仿百度查询
    baidu jsonp
    How to fix Error: laravel.log could not be opened?
  • 原文地址:https://www.cnblogs.com/kinglandsoft/p/15679356.html
Copyright © 2020-2023  润新知