请问如何将DBGrid中选中的一行记录(只有一个字段)拖动到listbox或memo中?是不是在
ondragdrop
ondragover等事件中写呢?请高手给出代码,谢谢!!
ondragdrop
ondragover等事件中写呢?请高手给出代码,谢谢!!
解决方案 »
- 郁闷贴.... 散分三
- 使用AVICAP32.DLL来捕获摄像头,可以设置分辨率吗
- 关于建立同构表的问题
- 在quickreport中出現下面問題:列印時出現如下問題:invalid blob handle in record buffer.請問這是什麼問題,該如何解決?
- 我想开发共享软件,不知申请100M 的空间要多少钱?
- Dephi 中如何处理超连接?比如 点击 “专家门诊”可以打开浏览器并连接到 www.csdn.net
- 我是新手请问‘如何把delphi的程序编译为EXE的文件?’
- 高分求一个过河的问题的算法
- delphi 数组删除记录
- 如何控制edit的输入格式?
- 列表索引越界是什么意思啊??
- 高分求救,COM口通讯的例子,分数不是问题,急救啊
var Handled: Boolean);
begin
case Msg.message of
WM_LBUTTONDOWN:
begin
if Msg.hwnd = DBGrid1.Handle then
begin
DBGrid1.Perform(Msg.message, Msg.wParam, Msg.lParam);
DBGrid1.DragMode := dmAutomatic;
end;
end;
WM_LBUTTONUP: DBGrid1.DragMode := dmManual;
end;
end;procedure TForm1.Memo1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
if (X < 0) or (Y < 0) then Exit;
if not (Source is TDBGrid) then Exit;
Accept := True;
TMemo(Sender).SetFocus;
TMemo(Sender).SelStart :=
TMemo(Sender).Perform(EM_CHARFROMPOS, 0, MAKELPARAM(X, Y)) and $0000FFFF;
end;procedure TForm1.Memo1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
if not (Source is TDBGrid) then Exit;
if not Assigned(TDBGrid(Source).SelectedField) then Exit;
TMemo(Sender).SelText := TDBGrid(Source).SelectedField.AsString;
end;procedure TForm1.ListBox1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
if (X < 0) or (Y < 0) then Exit;
if not (Source is TDBGrid) then Exit;
Accept := True;
TListBox(Sender).ItemIndex := TListBox(Sender).ItemAtPos(Point(X, Y), True);
end;procedure TForm1.ListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
if not (Source is TDBGrid) then Exit;
if not Assigned(TDBGrid(Source).SelectedField) then Exit;
TListBox(Sender).Items.Insert(TListBox(Sender).ItemIndex,
TDBGrid(Source).SelectedField.AsString);
TListBox(Sender).ItemIndex := TListBox(Sender).ItemIndex - 1;
end;
太谢谢了!
..//删除!
listbox1.Items.IndexOf(..)