Nie od razu zrozumiałem o co Tobie dokładnie chodzi.
Nie musisz od razu pobierać ścieżki dostępu do takiego kursora z rejestru, istnieją prostsze metody.
Kursor systemowy można przypisać do obiektu w zdarzeniu OnMouseMove dla obiektu Label:
- Kod: Zaznacz cały
//---------------------------------------------------------------------------
void __fastcall TForm1::Label1MouseMove(TObject *Sender, TShiftState Shift,
int X, int Y)
{
HCURSOR cursor = LoadCursor(NULL, IDC_HAND);
::SetCursor(cursor);
}
//---------------------------------------------------------------------------
gdzie IDC_HAND to jest właśnie "łapka".
Kursor "łapki" - systemowy - będzie w tym przypadku widoczny tylko na obiekcie Label i jeżeli zjedziesz kursorem z tego obiektu to zostanie przywrócony kursor domyślny, czyli
nie potrzebujesz żadnego kodu więcej przywracającego kursor domyślny.
Identyfikatory dla innych kursorów:
- IDC_APPSTARTING - strzałka z małą klepsydrą - praca w tle
- IDC_ARROW - strzałka - wybór normalny
- IDC_CROSS - krzyżyk - wybór precyzyjny
- IDC_HAND - rączka - wybór łącza
- IDC_HELP - strzałka z pytajnikiem - wybór pomocy
- IDC_IBEAM - pionowa kreska - wybór tekstowy
- IDC_ICON - przestarzały, nie używany - brak kursora
- IDC_NO - znak zakazu - niedostępny
- IDC_SIZE - przestarzały, nie używany - brak kursora
- IDC_SIZEALL - krzyżak ze strzałkami - przenieś
- IDC_SIZENESW - zmiana wym. po przekÄ…tnej 2
- IDC_SIZENS - zmiana wymiaru pionowego
- IDC_SIZENWSE - zmiana wym. po przekÄ…tnej 1
- IDC_SIZEWE - zmiana wymiaru poziomego
- IDC_UPARROW - strzałka skierowana do góry - wybór alternatywny
- IDC_WAIT - klepsydra - zajęty