|
1. TreeView에서 MouseDown 이벤트에서 마우스 Down위치의 TTreeNode*를 찾습니다.
2. 만약 MouseDown위치의 Node를 찾게되면 그 Node를 TreeView의 Selected로 설정하면 됩니다.
void __fastcall TCTRL_LEFT::TreeView1MouseDown(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y)
{
TTreeNode *Node;
Node=TreeView1->GetNodeAt(X,Y);
if(Node)
{
Node->Selected=true;
//TreeView1->Selected=true;//또는 이렇게...
}
}
이범상 님이 쓰신 글 :
: ^^
: 프로젝트 때문에 모르는게 너무많아 질문을 계속 하네요.
:
: TreeView에서 마우스오른쪽 클릭시에 메뉴가 나타나고
: 메뉴중 속성을 선택하면 현재 선택한 노드의 정보를 나타내려고 합니다.
:
: ========================= TreeView ========================
: A001
: -B001
: -C001
: -D0001
: -E0001
: -E0002
: [-B002]
: ==========================================================
:
: 지금 선택되있는 노드는 B002입니다.
: 그러나 저는 마우스로 C001위치에서 선택을 하지않고(즉, 마우스 왼쪽 버튼을 눌러 Select하지 않음)
: 바로 마우스 오른쪽 버튼을 눌러 메뉴를 나타낸다음 메뉴중의 속성을 선택해서 C001의 자세한 정보를 보이려 합니다.
:
: 그냥 하면 오른쪽 눌러 떼자 마자 바로 다시 선택이 B002로 돌아갑니다.
:
: 어떻하면 원하는 위치의 값을 받을 수 있을까요???
:
: 고수님들의 답변부탁드립니다.
:
: 답변에 항상 감사합니다. 오늘도 즐거운 하루 되십시요. ^^
|