Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

выделение правой кнопкой в treeview [D7, WinXP]


Сергей Петров ©   (2004-10-14 04:59:00) 

Есть treeview. Хочу сделать выпадающее меню, появляющееся при клике правой кнопкой мыши, в котором будет пункт "удалить".

Проблема в том, что при клике правой кнопкой treeview.selected не меняется.

treeview.rightclickselect := true не помогает.

видимо, это связано с потерей treeview фокуса.

Как победить?


BillyJeans   (2004-10-14 08:59:00) [1]

procedure TMF.TreeMouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
var tmp: TTreeNode;
begin
 tmp := Tree.GetNodeAt(X,Y);
 if tmp <> nil then tmp.Selected:= true;
 TreeClick(Sender);
end;


Babay   (2004-10-14 05:42:00) [2]

Попробуйте сделать так

procedure TForm1.TreeView1ContextPopup(Sender: TObject; MousePos: TPoint;
 var Handled: Boolean);
var
  tempNode: TTreeNode;
begin
tempNode := (Sender as TTreeView).GetNodeAt(MousePos.X, MousePos.Y);
  if tempNode <> nil then
    TTreeView(Sender).Selected := tempNode;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо