Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.12.13;
Скачать: CL | DM;

Вниз

TreeView MouseRightClick   Найти похожие ветки 

 
Aleks   (2009-10-20 16:30) [0]

На форме есть тривьюв с кучей одноуровневых веток. Имеется контекст.меню на правой кнопке мыши чтобы удалять-добавлять ветки в тривьюв. Только вот нужно сначала кликать левой кнопкой мыши чтобы переместить фокус на нужную ветку,а только потом правую и так жать "Удалить",иначе удаляет не ту ветку :(
Код такой:
if TreeView1.Items.Count>0 then
begin
if TreeView1.Selected<>nil then
   TreeView1.Items.Delete(TreeView1.Selected);
end;
Вопрос: как сделать чтобы фокус автоматически перемещелся на указанную при нажатиии правой клавиши мыши ветку? (Свойство TreeView RightClickSelect я установил в True, но это не помогло)


 
Dennis I. Komarov ©   (2009-10-20 16:42) [1]

Сперва присвоить фокус (Selected) там где надо, а потом уже удалять...


 
Aleks   (2009-10-20 17:33) [2]

Каким способом присвоить? :/


 
Dennis I. Komarov ©   (2009-10-20 17:46) [3]

...Selected:=(тот нод который был под курсором Jerry при наступлении соответствующего события)


 
clickmaker ©   (2009-10-20 17:47) [4]

OnMouseDown


 
Dennis I. Komarov ©   (2009-10-20 17:48) [5]

Впрочем, можно удалять сразу нужный нод, а не "выбранный", но это уже как изволит автор GUI...


 
Dennis I. Komarov ©   (2009-10-20 17:49) [6]


> clickmaker ©   (20.10.09 17:47) [4]

На первом скачке... ;)


 
DVM ©   (2009-10-20 17:51) [7]


> Aleks   (20.10.09 16:30)  


procedure TfrmMain.tvCategoriesMouseDown(Sender: TObject;
 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
 Node: TTreeNode;
begin
 Node := (Sender as TTreeView).GetNodeAt(X,Y);
 if Node <> nil then
   if Button = mbRight then
     SendMessage((Sender as TTreeView).Handle, TVM_SELECTITEM, TVGN_CARET, Longint(Node.ItemId));
end;



 
Aleks   (2009-10-21 11:12) [8]

Спасибо большое за полезные советы!



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

Текущий архив: 2009.12.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
1-1227817532
DmitryG.
2008-11-27 23:25
2009.12.13
Balloon Tooltip


2-1256312503
Nucer
2009-10-23 19:41
2009.12.13
xor первым 4 байтам string одной строкой


15-1255330388
@!!ex
2009-10-12 10:53
2009.12.13
Где можно узнать карту высот Самарской области?


15-1255617487
Yegorchic
2009-10-15 18:38
2009.12.13
Вопрос про установку RAID драйверов в Windows


2-1256283325
Sergey2
2009-10-23 11:35
2009.12.13
insert ряд значений