// 8 february 2014 package ui import ( // "syscall" // "unsafe" ) // Predefined cursor resource IDs. const ( IDC_APPSTARTING = 32650 IDC_ARROW = 32512 IDC_CROSS = 32515 IDC_HAND = 32649 IDC_HELP = 32651 IDC_IBEAM = 32513 // IDC_ICON = 32641 // [Obsolete for applications marked version 4.0 or later.] IDC_NO = 32648 // IDC_SIZE = 32640 // [Obsolete for applications marked version 4.0 or later. Use IDC_SIZEALL.] IDC_SIZEALL = 32646 IDC_SIZENESW = 32643 IDC_SIZENS = 32645 IDC_SIZENWSE = 32642 IDC_SIZEWE = 32644 IDC_UPARROW = 32516 IDC_WAIT = 32514 ) var ( loadCursor = user32.NewProc("LoadCursorW") ) func LoadCursor_ResourceID(hInstance HANDLE, lpCursorName uint16) (cursor HANDLE, err error) { r1, _, err := loadCursor.Call( uintptr(hInstance), MAKEINTRESOURCE(lpCursorName)) if r1 == 0 { // failure return NULL, err } return HANDLE(r1), nil }