zoukankan      html  css  js  c++  java
  • Delphi处理数据网格DBGrid的编辑框 获取还没有提交到数据集的字段文本

    //from
    http://kingron.myetang.com/zsfunc12.htm

    (*//
    标题:处理数据网格的编辑框
    说明:示例添加焦点颜色;获取还没有提交到数据集的字段文本
    设计:Zswang
    日期:2002-03-31
    支持:wjhu111@21cn.com
    //*)

    ///////Begin   Source
    function   GetDBGridEdit(mDBGrid:   TDBGrid):   TEdit;
    var
        I:   Integer;
    begin
        Result   :=   nil;
        if   not   Assigned(mDBGrid)   then   Exit;
        if   not   mDBGrid.EditorMode   then   begin
            mDBGrid.EditorMode   :=   True;
            mDBGrid.EditorMode   :=   False;
        end;
        with   mDBGrid   do   for   I   :=   0   to   Pred(ComponentCount)   do
            if   Components[I]   is   TCustomEdit   then   begin
                Result   :=   TEdit(Components[I]);
                Break;
            end;
    end;   {   GetDBGridEdit   }

    function   GetDBGridEditText(mDBGrid:   TDBGrid):   string;
    var
        vEdit:   TEdit;
    begin
        vEdit   :=   GetDBGridEdit(mDBGrid);
        if   Assigned(vEdit)   then
            Result   :=   vEdit.Text
        else   Result   :=   ' ';
    end;   {   GetDBGridEditText   }
    ///////End   Source

    ///////Begin   Demo
    procedure   TForm1.DBGrid1Enter(Sender:   TObject);
    var
        vEdit:   TEdit;
    begin
        vEdit   :=   GetDBGridEdit(TDBGrid(Sender));
        if   Assigned(vEdit)   then   vEdit.Color   :=   clYellow;
    end;

    procedure   TForm1.DBGrid1KeyUp(Sender:   TObject;   var   Key:   Word;
        Shift:   TShiftState);
    begin
        Caption   :=   GetDBGridEditText(TDBGrid(Sender));
    end;
    ///////End   Demo

    procedure TForm4.dbgrdShowKeyUp(Sender: TObject; var Key: Word;
    Shift: TShiftState);
    begin
    with qry1 do //动态计算
    begin
    if (FindField('总价')<>nil) and (FindField('数量')<>nil) and (FindField('单价')<>nil) then
    if State in [dsinsert,dsedit] then
    begin
    UpdateRecord;
    FieldByName('总价').AsString:=StrOpt(DasS(qry1,'数量'),'*',DasS(qry1,'单价'));
    end;
    end;

    end;

     
  • 相关阅读:
    RJ-45与RJ-48的区别
    PCB设计铜铂厚度、线宽和电流关系
    PCB设计铜铂厚度、线宽和电流关系
    WiFi天线对PCB布局布线和结构的要求详解
    WiFi模块选型参考
    掩码是什么意思?
    计算机音频基础-PCM简介
    使用CSS2对页面中的文字添加彩色边框
    SQL Plus
    A Famous Music Composer
  • 原文地址:https://www.cnblogs.com/jijm123/p/10589294.html
Copyright © 2011-2022 走看看