使用TDBGrid组件

unit Udbgrid;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids, DBGrids, DB, ExtCtrls, DBCtrls, DBTables;

type
  TForm1 = class(TForm)
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    Table1: TTable;
    DBNavigator1: TDBNavigator;
    Table1CustNo: TFloatField;
    Table1Company: TStringField;
    Table1City: TStringField;
    Table1Country: TStringField;
    ListBox1: TListBox;
   // procedure Button1Click(Sender: TObject);
    procedure DBGrid1DblClick(Sender: TObject);
    procedure ListBox1DrawItem(Control: TWinControl; Index: Integer;
      Rect: TRect; State: TOwnerDrawState);
    procedure ListBox1DblClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{procedure TForm1.Button1Click(Sender: TObject);
begin
dbgrid1.UpdateAction()
end;}

procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
listbox1.Visible:=true;
end;

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
 var
  i: Integer;     //定义循环变量
 begin
   for i:=0 to(listBox1.Items.Count-1) do    //通过循环对选中的Item进行定位
   begin
     if listBox1.Selected[i] then  //定位后,开始修改
     begin  
       Table1.Edit;   //使数据库表处于编辑状态,便于修改
       Table1.FieldByName('Country').AsString:=listbox1.Items.Strings[i];
       //将在ListBox中选中的内容赋给当前记录的Country字段
       Table1.Post;    //把修改后的变化存入数据库表
     end;
    end;
  end;
 procedure TForm1.ListBox1DblClick(Sender: TObject);
 var
  i: Integer;     //定义循环变量
 begin
   for i:=0 to(listBox1.Items.Count-1) do    //通过循环对选中的Item进行定位
   begin
     if listBox1.Selected[i] then  //定位后,开始修改
     begin  
       Table1.Edit;   //使数据库表处于编辑状态,便于修改
       Table1.FieldByName('Country').AsString:=listbox1.Items.Strings[i];
       //将在ListBox中选中的内容赋给当前记录的Country字段
       Table1.Post;    //把修改后的变化存入数据库表
     end;
    end;
 end;
end.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值