• 循环控件


    今天看了以前刚学D写的一个程序,发现好多垃圾代码,我有本事把Edit一个一个的写下去

    Edit1.MaxLength := 2;
    Edit2.MaxLength := 2;
    Edit3.MaxLength := 2;
    Edit4.MaxLength := 2;
    Edit5.MaxLength := 2;
    Edit6.MaxLength := 2;
    Edit7.MaxLength := 2;
    Edit8.MaxLength := 5;

    Edit1.SelStart := length(Edit1.Text);
    Edit2.SelStart := length(Edit2.Text);
    Edit3.SelStart := length(Edit3.Text);
    Edit4.SelStart := length(Edit4.Text);
    Edit5.SelStart := length(Edit5.Text);
    Edit6.SelStart := length(Edit6.Text);

    现在看看,真“厉害”,我也只能这么说了。

    当初是不想写这么多,想省点事,所以就想循环,当初是这么想的

    var
        i: integer;
    begin
        for i := 1 to 8 do begin
           Edit[1].text // 哈哈,结果发现不行,因为根本就不是控件名
        end;
    end;
    

    好吧,我放弃了,反正功能都一样,我根本就没想到循环控件.

    今天突然想起来就这这里记录下吧。

    var
      i,j: integer;
    begin
      /// 输入最大长度
      for i := 0 to self.ComponentCount -1 do begin         // 循环每个Edit控件 设置最大长度为2
        if self.Components[i] is TEdit then begin
          (self.Components[i] as TEdit).MaxLength := 2;
        end;
        if Sender = Edit8 then Edit8.MaxLength := 5;       // 长度不超过5位数
      end;
    end;

    /// 将光标移到最后
      for j := 0 to ComponentCount - 1 do begin
        if Components[j] is TEdit then begin
          (Components[j] as TEdit).SelStart := Length((Components[j] as TEdit).Text);
        end;
      end;
  • 相关阅读:
    按钮水波纹效果
    点击水波纹效果
    实现图片上传预览效果
    css 实现鼠标滑过流光效果
    插件地址参考
    移动前端经验
    移动端开发需要加的meta
    25款css动画库
    oracle 中的next_day函数
    Oracle replace函数
  • 原文地址:https://www.cnblogs.com/studypanp/p/4902787.html
Copyright © 2020-2023  润新知