//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::TreeView1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y)
{
if(TreeView1->GetNodeAt(X, Y)) TreeView1->Cursor = crHandPoint;
else TreeView1->Cursor = crDefault;
}
//---------------------------------------------------------------------------
이런 방법으로 마우스 위치에서 노드를 구해서 연산을 하시면 되지 않을까 싶네요. 문제는, 같은 줄에 있는 아이템은 TreeView나 ListView의 Report의 경우에, 같은 아이템으로 인식이 된다는 것입니다.
더 정확한 연산을 하시려면, 위치를 하나하나씩 직접 잡아서 연산을 하시는 것도 괜찮다고 생각합니다. 노드가 많을때 속도 문제가 있을수도 있겠지만요...
ListView의 경우에는 ListView1->GetItemAt 으로 사용하시면 됩니다.
cmely 님이 쓰신 글 :
:
:
:
:
:
:
:
만약에 treeview나 listview에서 아이템 위에 커서가 갈 경우 손모양으로 바꾸고 싶은데요..
:
:
object inspector에서 변경하니까...
:
treeview나 listview의 빈공간에도 손모양으로 바뀌네요...
:
:
아이템 위에 올라갔을때만 바뀌고 싶거든요.....
:
:
검색을 해도 잘 못찾겠어요..^^
:
:
: