![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Drag and Drop
9899100 © (2008-08-11 10:26:00)Посдкажите как сделать Drag&Drop строки DBGrid?? из DBGrid перетащить в дерево.
если выставляю DragMode=dmAutomatic, то немогу мышкой перейти на какулибо запись, при нажатии на левую кнопку мыши стартует режим перетаскивания :(
если выставляю режим dmManual и в обрабочике onMouseDown проверяю нажата ли левая кнопка мыши и если нажата то делаю BeginDrag(true)
то туда программа вообще не доходит, ставил бреакпоинт на эту строку проверки, вообще не выполняеться :(
Ega23 (2008-08-11 11:15:00) [1]
> сам сделал без EgaVgaшников
> вот так вот
Видишь как. Чуть-чуть подумал - и всё получилось. Без всяких EgaVgaшников в частности и форума в целом.
Молодец, так держать (я серьёзно).
9899100 (2008-08-11 10:58:00) [2]>>Ega23
ай маладца, как помог то, абалдеть
ты крут !!!
сам сделал без EgaVgaшников
вот так вот
procedure TForm1.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if ssLeft in Shift Then BeginDrag(False);
end;
Ega23 (2008-08-11 10:55:00) [3]Удалено модератором
9899100 (2008-08-11 10:42:00) [4]...
Рассмотрим теперь перенос ячеек в StringGrid1. Поскольку, как и в случае с Memo, простое нажатие левой кнопки занято под другие действия, установим DragMode = dmManual и будем запускать Drag при нажатии левой кнопки, удерживая клавиши Alt или Ctrl. Запишем в OnMouseDown:
var
Acol, ARow: Integer;
begin
with StringGrid1 do
....
я читать умею :)
но программа не заходит в обработчик onMouseDown !!!!!!!
я просто сделал так
procedure TForm1.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
MessageBox(0,'','',MB_OK);
end;
Месажбокс не выскочил ни разу !!!!!!!
ставил бреакпоинт на эту строку!!! туда никто не заходит!!!!
вчем грабли то !!!???
Ega23 (2008-08-11 10:36:00) [5]http://www.delphimaster.ru/articles/dragndrop/index.html