Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.03.06;
Скачать: [xml.tar.bz2];

Вниз

Проблемы при DragDrop в DBTreeList   Найти похожие ветки 

 
RDA   (2003-02-15 21:21) [0]

Таблица (ID,PARENT,KIND,NAZV) где KIND - smallint и определяет тип записи (подразделение-0, отдел-1, сотрудник-2). Свойство DBTreeList DragMode=dmAutomatic. При переносе все работает отлично но есть одно но - дабы не нарушить логику иерархии написал следующий код

procedure TfmStr.TreeListDragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
var
TargetNode, SourceNode : TdxTreeListNode;
begin
TargetNode:=TreeList.GetNodeAt(X,Y);
SourceNode:=TreeList.FocusedNode;
if TargetNode<>nil then
case TargetNode.ImageIndex of
0 : if SourceNode.ImageIndex in [1,2,3] then Accept:=True;
1 : if SourceNode.ImageIndex in [2,3] then Accept:=True;
2 : Accept:=False;
else Accept:=False;
end;
end;

И все бы хорошо но нормально проходит перенос когда TargetNode.ImageIndex=0 и SourceNode.ImageIndex=0, хотя это явно запрещено в операторе выбора.
Может есть лучший способ оследить иерархию, посоветуйте мастера.


 
MBo   (2003-02-15 22:02) [1]

Accept:=False;
TargetNode:=TreeList.GetNodeAt(X,Y);
SourceNode:=TreeList.FocusedNode;
if TargetNode<>nil then
Accept:=SourceNode.ImageIndex>TargetNode.ImageIndex;

это всё.


 
RDA   (2003-02-16 09:51) [2]

Хотелось чтоб это было все. После такого кода, у меня вообще не работает DragDrop, хотя я и не вижу явной ошибки.


 
RDA   (2003-02-16 10:01) [3]

Добавлю, DBTreeList.ImageIndexFieldName=KIND, и однозначно идентифицирует тип записи.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.03.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.009 c
14-17336
Maximator Vetera
2003-02-12 10:23
2003.03.06
Димедрол.


1-17071
IVANOV
2003-02-22 08:16
2003.03.06
Глобален ли TScreen?


7-17400
Ruf
2003-01-06 12:18
2003.03.06
Поверх всех окон


4-17448
microlab
2003-01-18 20:41
2003.03.06
Про аплеты


14-17315
Славянин
2003-02-17 14:42
2003.03.06
Ссылки по теме-склад.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский