• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Bencz

Inverter click do mouse

14 mensagens neste tópico

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.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

:D Posso perguntar o que estás a fazer?? :cheesygrin:

um programa para inverter o clique do mouse

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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 ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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 ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A ideia veio, mas nao consegui fazer com q ele mude o botão quando eu der 2 cliques com o botão esquerdo do mouse

0

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