不知道能不能实现.300分 有两个dbgrid,一个dbgrid1,一个dbgrid2,连接到adoquery1 表A,adoquery2表B上.表A和表了B通过一个Id号连接的。好了。问题:怎样实现把表dbgrid1中当前选择的行的数据 拖到(就是在windows复制文件一样)dbgrid2里,在dbgrid2中增加一条记录。(当然通过其它很多方法可以实现把表B的记录添加到表A里。 我现在指的是这种方法。)注意:是拖到, 而且带个影子什么的. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以实现,原理是: 分别在dbGrid的OnDragDrop, OnDragOver, OnStartDrag, OnEndDrag的几个事件处理,当在dbgrid1选择到数据时,在dbgrid1的OnStartDrag读取数据的内容, 在dbgrid2的OnDragDrop事件复制数据内容。 在onEndDrag里根据a数据集纪录的内容对b表添加,添加完后定位到该条记录即可。 Unit edbgrid;interfaceuses DBGrids, Controls, Classes;type TEDBGrid = class(TDBGrid) private FOnMouseDown: TMouseEvent; FOnMouseUp: TMouseEvent; protected procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y:Integer); override; procedure MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y:Integer); override; published Property OnMouseDown : TMouseEvent read FOnMouseDown writeFOnMouseDown ; Property OnMouseUp : TMouseEvent read FOnMouseUp write FOnMouseUp ;end;procedure Register;implementationprocedure Register;begin RegisterComponents('Data Controls',[TEDBGrid]);end;procedure TEDBGrid.MouseDown(Button: TMouseButton; Shift: TShiftState;X, Y: Integer);begin inherited MouseDown(Button,Shift,X,Y); if Assigned(FOnMouseDown) then FOnMouseDown(Self,Button,Shift,X,Y);end;procedure TEDBGrid.MouseUp(Button: TMouseButton; Shift: TShiftState; X,Y: Integer);begin inherited MouseUp(Button,Shift,X,Y); if Assigned(FOnMouseUp) then FOnMouseUp(Self,Button,Shift,X,Y);end;end.可以相应。 求一SQL语句(有些难度) 单元中调用窗体参数的问题 求Twain.dll的中文函数说明文档,100分!!!不够还可再加!!!!! 菜鸟问题——在线等候 how to translate? ADOQuery1:Missing SQL property. 批处理文件 简单的类型转换,在线等待。 大家猜猜,公司给我的礼物是什么 救命:dbgrid的小问题? 求教大虾,如何在Delphi的TForm或者是TImage上面用自定义的坐标系画图?? 调用其他语言dll出现access violation ataddress问题
分别在dbGrid的OnDragDrop, OnDragOver, OnStartDrag, OnEndDrag的几个事件处理,当在dbgrid1选择到数据时,在dbgrid1的OnStartDrag读取数据的内容, 在dbgrid2的OnDragDrop事件复制数据内容。
DBGrids, Controls, Classes;type
TEDBGrid = class(TDBGrid)
private
FOnMouseDown: TMouseEvent;
FOnMouseUp: TMouseEvent;
protected
procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y:
Integer); override;
procedure MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y:
Integer); override;
published
Property OnMouseDown : TMouseEvent read FOnMouseDown write
FOnMouseDown ;
Property OnMouseUp : TMouseEvent read FOnMouseUp write FOnMouseUp ;
end;procedure Register;implementationprocedure Register;
begin
RegisterComponents('Data Controls',[TEDBGrid]);
end;procedure TEDBGrid.MouseDown(Button: TMouseButton; Shift: TShiftState;
X, Y: Integer);
begin
inherited MouseDown(Button,Shift,X,Y);
if Assigned(FOnMouseDown) then
FOnMouseDown(Self,Button,Shift,X,Y);
end;procedure TEDBGrid.MouseUp(Button: TMouseButton; Shift: TShiftState; X,
Y: Integer);
begin
inherited MouseUp(Button,Shift,X,Y);
if Assigned(FOnMouseUp) then
FOnMouseUp(Self,Button,Shift,X,Y);
end;
end.
可以相应。