Форум: "Система";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];
ВнизУ кого глюк: у TreeView или у меня? Найти похожие ветки
← →
Hewer (2002-04-15 10:45) [0]Помогите разобраться! По какой причине может не работать свойство TTreeView::RightClickSelect? То есть от перемены значений {true, false} ничего не меняется. (Надеюсь что глюк все же у меня :)
← →
Song (2002-04-15 11:05) [1]А в чём выражается его "нерабочесть"?
← →
Song (2002-04-15 11:06) [2]RightClickSelect affects only the value of the Selected property. It does not cause the tree view to highlight a new node if the node is selected using the right mouse button.
Проблема осталась? Может у Вас неверное понимание значения этого свойства?
← →
Hewer (2002-04-15 11:13) [3]>А в чём выражается его "нерабочесть"?
В том, что правой кнопкой мыши итем выделить нельзя. Т.е я нажимаю на итем, он выделяется, как только отпускаю кнопку, выделяется тот же, котрой был выделен до нажатия. В хелпе написано что-то подобное, но еще там написано, что свойство Selected должно менятся, а оно не меняется :(
← →
Song (2002-04-15 11:19) [4]А обработчик на onMouse* никаких не писали? TPopupMenu не назначен?
← →
Hewer (2002-04-15 11:20) [5]А вообще мне надо сделать контестное меню для элементов, вызываемое нажатием правой кнопки (например, как в "Диспетчере устройств" в windows)
← →
Hewer (2002-04-15 11:23) [6]>А обработчик на onMouse* никаких не писали? TPopupMenu не назначен?
Я создал новое приложение, новую форму, на ней "дерево" и изменил только это свойство, и все равно не работает :(((((
← →
Song (2002-04-15 11:36) [7]У меня всё работает. Проверьте:
procedure TForm1.TreeView1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
IF Button=mbRight then ShowMessage(TTreeView(Sender).Selected.Text);
end;
И обратите внимание на эту строчку из хэлпа: " It does not cause the tree view to highlight a new node if the node is selected using the right mouse button.". Т.е. это свойство только возвращает текст в Selected, но не выделяет сам item. Чтобы его выделить обрабатывайте нажатие и рисуйте пунктирную рамку.
← →
Hewer (2002-04-15 11:49) [8]Я проверил вашим способом: сообщение выдается, только когда я на уже выделенный элемент деляю двойной(!) клик правой кнопкой и при том Selected все равно указывает на элемент, выделенный правой кнопкой. Видемо здесь поможет только переустановка windows :)
← →
Hewer (2002-04-15 11:52) [9]Немного ошибся: Selected все равно указывает на элемент, выделенный левой кнопкой
← →
Hewer (2002-04-15 12:07) [10]Решение оказалось простым:
procedure TForm1.TreeView1Mouse>>>Down<<<(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if(Button=mbRight) then
TreeView1.Selected:=TreeView1.GetNodeAt(X,Y);
end;
И не надо рамку рисовать!!!
Спасибо за помощь :)
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c