none
Cursor do Mouse

    Question

  • Pessoal,

    Como fazer para saber se o cursor do mouse está "passando" sobre determinado controle da tela, para, por exemplo, mudar o tipo de cursor?

     

    Obrigado,

     

    Thursday, November 16, 2006 10:30 AM

Answers

  • Olá Jorge, tudo bom?

    Você pode fazer o seguinte. Nos controles windows form existe alguns eventos para mouse como por exemplo o mouse click, mouse double click , etc. Mas vamos ao que interessa, supondo que você tenha um botão e uma label no seu formulario e quando o mouse estiver sobre o botão o cursor terá uma forma e quando estiver sobre a label o cursor terá outra forma. Vamos então ao evento MouseMove que ocorre quando o cursor estiver movendo sobre o controle.

    No evento MouseMove do botão vamos colocar o seguinte código:

    Cursor = Cursors.Hand

    E no evento MouseDown da label vamos fazer o seguinte código:

    Cursor = Cursors.WaitCursor

    Verifique agora o que acontece!!

    Espero ter te ajudado,

    Saudações,

    Regilan Meira

     

     

    Thursday, November 16, 2006 11:18 AM
  • Vc pode usar os eventos MouseEnter e MouseLeave dos controles pra mudar o cursor...

    Por exemplo, se vc quer que em um controle, ao entrar nele, mude o cursor, no evento MouseEnter vc muda pro cursor que vc quiser e no evento MouseLeave vc volta o cursor pro normal...

    Thursday, November 16, 2006 12:09 PM

All replies

  • Jorge,

    WebForm ou WinForm?

    Thursday, November 16, 2006 10:35 AM
  • É WinForm.
    Thursday, November 16, 2006 10:40 AM
  • Olá Jorge, tudo bom?

    Você pode fazer o seguinte. Nos controles windows form existe alguns eventos para mouse como por exemplo o mouse click, mouse double click , etc. Mas vamos ao que interessa, supondo que você tenha um botão e uma label no seu formulario e quando o mouse estiver sobre o botão o cursor terá uma forma e quando estiver sobre a label o cursor terá outra forma. Vamos então ao evento MouseMove que ocorre quando o cursor estiver movendo sobre o controle.

    No evento MouseMove do botão vamos colocar o seguinte código:

    Cursor = Cursors.Hand

    E no evento MouseDown da label vamos fazer o seguinte código:

    Cursor = Cursors.WaitCursor

    Verifique agora o que acontece!!

    Espero ter te ajudado,

    Saudações,

    Regilan Meira

     

     

    Thursday, November 16, 2006 11:18 AM
  • Vc pode usar os eventos MouseEnter e MouseLeave dos controles pra mudar o cursor...

    Por exemplo, se vc quer que em um controle, ao entrar nele, mude o cursor, no evento MouseEnter vc muda pro cursor que vc quiser e no evento MouseLeave vc volta o cursor pro normal...

    Thursday, November 16, 2006 12:09 PM
  • André,

     

    Na verdade, acho que no meu caso a coisa é mais complicada. Estou utilizando um grid, o Spread .NET, e eu gostaria de, quando o mouse passasse em cima de determinada coluna, mudasse o cursor do mouse. Acho que vou ter que tentar no forum da FarPoint, O problema é que é em inglês e my english is very poor.

     

    Jorge.

    Thursday, November 16, 2006 4:05 PM
  • Regilan,

     

    Na verdade, acho que no meu caso a coisa é mais complicada. Estou utilizando um grid, o Spread .NET, e eu gostaria de, quando o mouse passasse em cima de determinada coluna, mudasse o cursor do mouse. Acho que vou ter que tentar no forum da FarPoint, O problema é que é em inglês e my english is very poor.

     

    Jorge.

    Thursday, November 16, 2006 4:05 PM
  • É... Vc vai ter que ver se o evento MouseOver indica em qual célula ou coluna o mouse está em cima ou até msm se não tem um evento do tipo "CellMouseOver" ou algo do gênero... Nunca mechi com esse controle...
    Thursday, November 16, 2006 7:18 PM