Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

Bencz

Inverter click do mouse

Mensagens Recomendadas

Bencz    0
Bencz

Alguem poderia me ajudar a fazer um programa q inverta o click do mouse, por exmplo

( eu clico com o botão esquerdo e ele detecta como se foce o click do botão direito, e eu clico com o botão direito ele vale como se foce o esquerdo);

obrigado.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Bencz    0
Bencz

Creio que deve haver uma API do Windows para fazer isso, dado que podes fazer isso no painel de controlo.

sim, existe uma api para isso, mas eu tenho q fazer um programa para fazer isso, a API esta no lugar [HKEY_USERS\.DEFAULT\Control Panel\Mouse], se alguem puder me ajudar eu agradeço

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Bencz    0
Bencz

Vai a "HKEY_CURRENT_USER\Control Panel\Mouse" e altera a chave "SwapMouseButtons" para 1, se calhar tens de reiniciar o pc.

isso eu sei XD

mas eu tenho q fazer um programa para alterar, alguem pode ajudar ?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Bencz    0
Bencz

Consegui.

Segue o codigo.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;


namespace ConsoleApplication1
{
    class Program
    {
        [DllImport("user32.dll")]
        public static extern Int32 SwapMouseButton(Int32 bSwap);

        static void Main(string[] args)
        {
            string esco;
            do
            {
                Console.WriteLine("Digite A para mudar a pos do mouse");
                Console.WriteLine("Digite B para voltar ao normal");
                esco = Console.ReadLine();
                switch (esco)
                {
                    case "A":
                    case "a":
                        // Altera.
                        SwapMouseButton(1);
                        break;
                    case "B":
                    case "b":
                        // Volta ao normal.
                        SwapMouseButton(0);
                        break;
                    default:
                        Console.WriteLine("A opcao {0}, nao existe", esco);
                        break;
                }

            } while (esco != "b");
        }
    }
}

Obrigado pela ajuda \o o.O

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
scorch    19
scorch

Não há o evento DoubleClick? Em praticamente todas as linguagens há. Mas se não houver, quando ele clica, verificas o valor de uma variável, se for true, clicou duas vezes, senão atribuis o valor a uma variável true, e depois activas um timer de 1 seg. No fim do timer metes a variável a false e acabas o timer.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Ziwdon    0
Ziwdon

agora surgiu mais uma duvida, como q eu faço para ele detectar quando eu der 2 clicks com o mouse ele fazer uma função Y ?

Quando clicares onde? Na Form? Tens o evento doubleclick nos painel de eventos. Se estiveres em WPF tens de usar o evento click e depois usas e.ClickCount para obteres o número de clicks.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Bencz    0
Bencz

Eu preciso assim, quando eu estiver em qual quer lugar, ano precisa estar no form, só o programa aberto ja é o sulficiente, eu fiz assim mas ele nao faz oq eu preciso XD

private void Button_MouseDown(object sender, MouseButtonEventArgs e)
        {
            if (e.ClickCount == 2)
            {
                SwapMouseButton(0);
            }
        }

ele nao muda o botão

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade