Ir ao conteúdo
  • Cadastre-se

aurelio alves

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

Reputação

2
  1. Obrigado arfneto pelo retorno! Eu tente colocar o código aberto, mas não consegui, pois quando dou ctrl + v, ele aparece todo desalinhado. Estou abrindo este arquivo no visual Studio 2019 linguagem c. ""””""""""""""""""""""”"""""""""""""""""""""""""""""""""""""""""""""""""""""""" Arfneto: O que quer fazer é algo como o comportamento do ícone do conta-gotas no mspaint, para copiar a cor do ponto onde o mouse está apontando? Resp:. Exatamente. Copiar os pontos em um determinado lugar quando eles aparecerem e acionar o click em outro lugar. Como no vídeo em anexo. """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Pode usar esse aqui do c / c++ , que você insere as coordenada onde pegar a cor e o valor RBG das cores e onde clicar com o mouse , caso surja nessa posição tal cor , e esse programa foi feito com o visual studio comunity 2019 , pois em compiladores mais antigos não funcionou . #define _CRT_SECURE_NO_WARNINGS // para usar scanf e outras funções no visual studio // por desligar os warnings " Alertas do compilador" /* programa feito no VisuaL Studio Comunity 2019 */ #include <stdio.h> // biblioteca de entrada e saida de dados #include <Windows.h> // biblioteca para certos comandos no ambiente windows int main() // função PrincipaL de todo programa em linguagem c { INPUT in; // POINT p; // comandos do mouse in.type = INPUT_MOUSE; in.mi.dwFlags = MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP; in.mi.time = 0; HDC tela = GetDC(0); // para acessar a tela COLORREF clrf; // função para usar cores GetCursorPos(&p); // pega a posição da setnha do mouse printf("a ponta da setinha do mouse esta na posicao:\n"); printf("Setinha coluna--= %d\n", p.x); // escreve o numero da coluna onde está a ponta da setinha do mouse printf("Setinha linha -= %d\n", p.y); // escreve o numero da linha onde está a ponta da setinha do mouse int clk_x, clk_y, p_x, p_y,op; int cr=43, cg=47, cb=155,cont=0; // cor azul celeste escuro printf("numero da coluna da tela onde detectar a cor "); scanf("%d", &p_x); printf("numero da linha da tela onde detectar a cor "); scanf("%d", &p_y); printf("numero da coluna da tela onde clicar "); scanf("%d", &clk_x); printf("numero da linha da tela onde clicar "); scanf("%d", &clk_y); printf("\nUm exemplo :\n"); printf("a cor azul celeste escuro tem o RGB => R= 43 , G= 47, B= 155\n"); printf("se não souber as cores tecle 0 , e elas serao estabelecidas com R=43 G=47 B=155\n"); printf(" 0 = não sei os numeros das cores\n"); printf(" 1 = informarei os numeros das cores\n"); scanf("%d", &op); if (op == 1) { printf("informe o numero referenta a cor vermelha R do (RGB) de 0 ate 255 "); scanf("%d", &cr); printf("informe o numero referenta a cor verde G do (RGB) de 0 ate 255 "); scanf("%d", &cg); printf("informe o numero referenta a cor azul B do (RGB) de 0 ate 255 "); scanf("%d", &cb); } /* int x = 1308, y = 238, cont = 0; // especificar as posições onde pegar a cor p.x = 1483; // posiciona a setinha do mouse na coluna da tela onde vai clicar p.y = 16; // posiciona a setinha do mouse na linha da tela onde vai clicar */ //Sleep(5000); // para e espera cinco Segundos e depois continua printf("tecle ENTER e vai inciar\n"); op = getchar(); // duas vezes pois scanf deixa um newline no buffer op = getchar(); // e passa direto , então precisa desse outro aqui printf("iniciou\n"); printf("tecle o botao INSERT para parar\n"); while (!GetAsyncKeyState(VK_INSERT)) // repete enquanto não pressionar a tecla Insert do teclado { clrf = GetPixel(tela, p_x, p_y); // pega a cor desse ponto da tela ( 1308 , 238 ) int r = GetRValue(clrf); // pega a qtd de cor vermelha ( 0 até 255 ) e armazena em "r" int g = GetGValue(clrf); // pega a qtd de cor verde ( 0 até 255 ) e armazena em "g" int b = GetBValue(clrf); // pega a qtd de cor azul ( 0 até 255 ) e armazena em "b" // a mistura dessas cores ( r g b ) formam uma cor finaL resultante // quanto maior o valor a car será mais clara if (r == cr && g == cg && b > cb) // esses valores significam que a cor nessa posição // é azul escuro que é a mistura de 43 de vermelho ( r ) + // 47 de verde ( g ) + qq valor acima de zero de cor azul ( b ) { // aqui colocar o que fazer caso encontre a cor azul ness posição p.x = p_x; p.y = p_y; SetCursorPos(p.x, p.y); // move a setinha do mouse para essa posição da tela do Monitor SendInput(1, &in, sizeof(in)); // clica na posição da ponta da setinha do mouse e solta cont++; // incrementa a qtd de click do mouse Sleep(1000); // aguarda por um Segundo e continua depois } //if (cont == 2)break; // se clicou duas vezes então para de repetir esses comando ali // de cima e sai desse Loop " enquanto " } printf("total de Vezes Que Apareceu a cor azul --> %d\n\n\n", cont); // e vem para essa Linha e escreve essa msg ReleaseDC(0, tela); // e termina o programa return 0; // e retorna para o windows com o valor zero } Segue código aberto:
  2. Olá a todos! Primeiramente gostaria de parabenizar o Devair1010 pelo trabalho prestado no fórum, na ajuda de todos!! Estou começando no c++, e estou com um problema de ligação do código já postado aqui com a janela executável na área de trabalho, ou seja, não sei como fazer a parte executável de ligar com o código abaixo: Obs: Este código que está abaixo no link, já foi apresentado no aqui no fórum pelo Devair1010. https://www.clubedohardware.com.br/forums/topic/1325012-programa-auto-click-que-ativasse-por-cor/?do=findComment&comment=8220067 comentario #7 -Programa auto-click que ativasse por cor Atenção: Abaixo esta o vídeo de como ele fica no final. Esta parte final que não estou conseguindo fazer e ligar com o código do link acima. Se alguém puder me ajudar, fico muito agradecido!! 1476705947_ProgramaAutoClick.zip

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!