Windows 7 - obtenha a localização da Lixeira no Desktop

2

Existe alguma maneira de obter a localização (x, y coordenadas ou similar) do ícone da Lixeira na área de trabalho?

Obrigado

    
por user2370460 15.07.2014 / 18:23

1 resposta

2

Código atualizado.

Você pode usar o AutoHotkey para isso. Você precisa do comando Imagesearch para fazer isso. Aqui está um código completo que faz o que você precisa:

CoordMode, Pixel, Screen
ImageSearch, varX, varY, 0, 0, 1360, 768, rb.bmp
MsgBox, Recycle Bin coordinates are x=%varX%, y=%varY% .

Neste código, substitua 1360, 768 pela resolução da sua tela de monitor.

Coloque todo o código no bloco de notas e armazene-o como anyfilename.ahk.

rb.bmp é a imagem do ícone da Lixeira. Para fazê-lo, crie uma imagem como redline nesta imagem abaixo. Portanto, sua imagem deve ser a parte do ícone Lixeira que está na minha foto como linha vermelha. Não faça o rb.bmp como minha imagem, ele deve incluir apenas a parte do quadrado vermelho da minha imagem! Coloque rb.bmp na pasta onde anyfilename.ahk é.

Entãorb.bmpdeveserassim:

Faça o download da nova versão do AutoHotkey do link (versão atual), não do autohotkey.com (versão desatualizada!) e instale-o.

Após a instalação do AutoHotkey, clique duas vezes em anyfilename.ahk. Você obterá as coordenadas do canto superior esquerdo de rb.bmp (círculo verde na minha primeira foto) na caixa de mensagem.

O AutoHotkey também possui um conversor que permite converter o arquivo .ahk para o arquivo .exe, se necessário.

Segunda versão

Funciona com a Lixeira completa e vazia:

CoordMode, Pixel, Screen
Loop
{
    ImageSearch, varX, varY, 0, 0, 1360, 768, rb1.bmp
    if(varX!="")
    {
        MsgBox, Full Recycle Bin coordinates are x=%varX%, y=%varY%
    }
    varX:=""
    varY:=""

    ImageSearch, varX, varY, 0, 0, 1360, 768, rb2.bmp
    if(varX!="")
    {
        MsgBox, Empty Recycle Bin coordinates are x=%varX%, y=%varY% 
    }
    varX:=""
    varY:=""

    Sleep, 1000
    break
}

rb1.bmp é para o ícone completo da Lixeira.

rb1.bmp é para o ícone vazio da Lixeira.

Eu também coloquei o comando sleep. 1000 é aqui o valor em milissegundos (1seg = 1000 milissegundos). Com esse comando, ele aguardará 1.000 milissegundos para verificar a Lixeira novamente. Você pode dar qualquer valor. Você também pode remover esse comando.

    
por 15.07.2014 / 18:39