xxxxsoft
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Как сделать так, чтобы когда с помощью drag & drop я добавил запись в treelist он с позиционировался на эту ноду: Код: это собственно возникает, когда я щелкаю по три листу и получаю нужные данные void __fastcall TfrmMain::tlGroupSelectionChanged(TObject *Sender) { if(ASite) { if (ASite->Dragging()) return; } if (kontr) kontr->GetOnGroup(((TcxDBTreeList *) Sender)->DataController->DataSet->FieldByName(((TcxDBTreeList *) Sender)->DataController->KeyField)->AsString); } а вот это происходит, когда заканчивается драг и дроп, только почему то он позиционируется на корень, а хотелось бы на ноду void __fastcall TfrmMain::tlGroupDragDrop(TObject *Sender, TObject *Source, int X, int Y) { if (Sender == Source || !IsHitAtNode((TcxDBTreeList*)Sender, X, Y)) return; TcxTreeListDataNode *AHitNode = (TcxTreeListDataNode*)((TcxDBTreeList*)Sender)->HitTest->HitNode; TcxDragControlObject * DragObject; TcxGridSite * GSite; DragObject = dynamic_cast<TcxDragControlObject*>(Source); if (DragObject) GSite = dynamic_cast<TcxGridSite*>(DragObject->Control); if(Sender->ClassNameIs("TcxDBTreeList") && DragObject!=NULL && GSite!=NULL) { if (GSite->GridView->PatternGridView == tvKontragent) { kontr->PutInGroup(AHitNode->KeyValue); } } } |
|