![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здравствуйте, нужна помощь, мне необходимо сделать так чтоб перетаскивать из ячейки DBGrid'а в Edit, мб это тупо но я не могу допереть
![]() Заранее благодарен ![]() Последний раз редактировалось mifka72, 14.12.2009 в 08:37. |
#2
|
|||
|
|||
![]() Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids; type TForm1 = class(TForm) StringGrid1: TStringGrid; Edit1: TEdit; procedure StringGrid1EndDrag(Sender, Target: TObject; X, Y: Integer); procedure FormCreate(Sender: TObject); procedure FormDockOver(Sender: TObject; Source: TDragDockObject; X, Y: Integer; State: TDragState; var Accept: Boolean); procedure StringGrid1MouseActivate(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y, HitTest: Integer; var MouseActivate: TMouseActivate); private { Private declarations } public { Public declarations } i, j : integer; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var i, j : byte; begin for i := 1 to 3 do for j := 1 to 3 do StringGrid1.Cells[i, j]:=IntToStr(i*j); end; procedure TForm1.FormDockOver(Sender: TObject; Source: TDragDockObject; X, Y: Integer; State: TDragState; var Accept: Boolean); begin Accept:=True; end; procedure TForm1.StringGrid1EndDrag(Sender, Target: TObject; X, Y: Integer); begin Edit1.Text:=StringGrid1.Cells[J, I]; end; procedure TForm1.StringGrid1MouseActivate(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y, HitTest: Integer; var MouseActivate: TMouseActivate); begin StringGrid1.MouseToCell(X, Y, J, I); {Showmessage(StringGrid1.Cells[J, I]);} end; end. Только StringGrid на DBGrid поменяйте, должно работать. Накатал на скорую руку. С уважением |
#3
|
|||
|
|||
![]() nedd cпаcибо за код.
В DBGrid'е не работают как надо эвенты "OnСellСlick" и "OnMouseDown", но я нашёл отлично подходящий и более функциональный компонент на основе DBGrid'а. Безотказно работает "OnMouseDown" c поcледующим BeginDrag. Вообщем получилось всё компактно и красиво, думаю тема на этом закрыта! Последний раз редактировалось mifka72, 15.12.2009 в 13:30. |