title: Change cursor when hovering a child window
body: <p>I have a window that asks for Login/Password with five child windows:</p>
  
  <ul>
  <li>An editable one: Login</li>
  <li>Another editable one: Password</li>
  <li>An OK button</li>
  <li>A "forgot your password" one</li>
  <li>And a "Register" one.</li>
  </ul>
  
  <p>Basically, when you click on either of the last two, you are sent to a website where you can perform the appropriate actions.</p>
  
  <p>It's all fine and dandy, but I would love to know how it's possible to check (with messages I guess) if the mouse cursor is hovering over one of the two links, and if that's the case, to change it to a hand cursor.</p>
  
  <p>I'd especially like to know how to detect it! I can figure out how to change the cursor afterwards with SetCursor and such!</p>
  
  <p><strong>EDIT:</strong> I actually found out that WM_SETCURSOR is a really easy message to handle. Basically, you check if the wParam is equal to the handle of the child window it's hovering over and voilà!</p>
  
  <p>But I actually find the <code>SetCursor</code> to be a bigger issue.</p>
  
  <p>Here's what I did:</p>
  
  <p>The declaration of my cursors:</p>
  
  <pre><code>static HCURSOR  hCursorHand;
  static HCURSOR  hCursorArrow;
  </code></pre>
  
  <p>The value is set here (in the handle for WM_CREATE):</p>
  
  <pre><code>hCursorHand = LoadCursor( NULL, IDC_HAND );
  hCursorArrow = LoadCursor( NULL, IDC_ARROW );
  </code></pre>
  
  <p>And here's where I set it:</p>
  
  <pre><code>else if (msg == WM_SETCURSOR)
  {
      if ((HWND)wParam == hwndLinkFPasswd || (HWND)wParam == hwndLinkSignUp)
          SetCursor(hCursorHand);
      else
          SetCursor(hCursorArrow);
  }
  </code></pre>
  
  <p>I know the cursor is properly detected (thank you breakpoints), but it doesn't seem to do anything. The cursor stays an arrow...</p>