windows – Como saber quando um item do menu foi clicado?

Estou utilizando a “crate” winsafe e quero saber quando um item do menu foi clicado.

flags & MF_MOUSESELECT as u16 deve ser 1 em caso afirmativo e 0 em caso contrário, mas é sempre 32768 toda vez que o evento é disparado, mesmo que seja apenas do usuário pairando sobre um item do menu, ou até mesmo clicando para que ele feche.

Por quê?

self.wnd.on().wm(winsafe::co::WM::MENUSELECT, {
  move |params| {
    let wparam = params.wparam;
    let lparam = params.lparam;
    let flags = (wparam >> 16 & 0xffff) as u16;
    let MF_MOUSESELECT = 0x00008000 as u32;
    
    println!("{}", flags & MF_MOUSESELECT as u16);
    // sempre 32768

    0
  }
});