Botão de Ação da Calculadora com Diálogo#
Vamos considerar um exemplo de robô que mostra como "adicionar" seu próprio botão na janela de um aplicativo de terceiros e executar uma ação específica ao clicar nele, neste caso - exibir uma janela de diálogo com texto e link. Antes de iniciar o projeto, o Calculadora deve estar em execução (verificado com Windows 10).
O projeto do robô consiste em um diagrama. Assim, se descrevermos passo a passo, este robô funciona da seguinte maneira:
- Cria um botão para a calculadora “Mostrar nossa dica” usando o Editor de Janelas.
- Após clicar no botão criado, exibe a janela modal criada no “Editor de Janelas” com a dica e o link para a calculadora no Google Chrome.
- Após clicar no link, inicia a calculadora no Google Chrome, e após clicar no botão “Fechar” – fecha a janela modal.
O diagrama do projeto é assim (para conveniência, os blocos do diagrama estão numerados):
- Bloco “Início” (a partir deste bloco começa qualquer diagrama).
- Bloco “Mostrar botão para a calculadora” permite criar suas próprias janelas (formulários) e exibi-las em modo modal e não modal, incluindo de forma assíncrona em relação ao fluxo do script. Se um seletor for definido, as coordenadas da janela criada serão vinculadas ao controle em outro aplicativo. Para criar e editar sua janela, use o botão “Editar...” do bloco, e para criar janelas reutilizáveis - o botão “Editor de Janelas” na barra de ferramentas principal. Para este bloco, as seguintes propriedades são especificadas:
- Configuração (string de configuração);
- Objeto da janela (variável com o objeto da janela);
- Seletor (identificador do elemento ao qual a janela está vinculada ao ser exibida);
- ID do processo (variável que armazena o identificador do processo, indica com qual aplicativo deve trabalhar);
- Ângulo de anexo (seleção do valor do ângulo de anexo da janela, quando um seletor é definido, o valor do ângulo de anexo indica a anexa do canto superior esquerdo da janela ao canto do elemento encontrado);
- Deslocamento X (deslocamento na coordenada X ao exibir a janela);
- Deslocamento Y (deslocamento na coordenada Y ao exibir a janela).
O botão que o bloco mostra foi criado usando a ferramenta “Editor de Janelas”.
Você pode visualizá-lo e editá-lo clicando no botão “Editar…”, que está dentro do bloco.
- Bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” é igual (==)/ maior (>)/ menor (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for menor que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição utilizada é o clique no botão, e como tal está definido: $ControlEvent != "". Ou seja, se a variável $ControlEvent não estiver vazia, então a saída é “Sim”.
- Bloco “Mostrar janela com dica e link” permite criar suas próprias janelas (formulários) e exibi-las em modo modal e não modal, incluindo de forma assíncrona em relação ao fluxo do script. Se um seletor for definido, as coordenadas da janela criada serão vinculadas ao controle em outro aplicativo. Para criar e editar sua janela, use o botão “Editar...” do bloco, e para criar janelas reutilizáveis - o botão “Editor de Janelas” na barra de ferramentas principal. Para este bloco, as seguintes propriedades são especificadas:
- Configuração (string de configuração);
- Objeto da janela (variável com o objeto da janela);
- Modal (ao definir a flag, a janela será exibida como modal);
- ID do processo (variável que armazena o identificador do processo, indica com qual aplicativo deve trabalhar);
- Ângulo de anexo (seleção do valor do ângulo de anexo da janela, o valor “Padrão” indica o centro do elemento).
A janela que o bloco mostra foi criada usando a ferramenta “Editor de Janelas”. Você pode visualizá-la e editá-la clicando no botão “Editar…”, que está dentro do bloco.
- Bloco “Log” permite registrar mensagens e/ou valores de variáveis no log durante a execução do script do robô. Para este bloco, a propriedade “Valor” é especificada. Entre aspas está uma constante de texto, e o nome da variável começa com o símbolo $. Ou seja, este bloco registra no log do robô o valor da variável.
- Bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua na direção da saída “Sim” (se a condição for atendida) ou na direção da saída “Não” (se a condição não for atendida).
A condição é escrita no formato: “variável” é igual (==)/ maior (>)/ menor (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for menor que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, a condição utilizada é o clique no link, e como tal está definido: $ControlEvent.Contains("LinkLabel"). Ou seja, se a variável contém o texto "LinkLabel", então a saída é “Sim”.
- Bloco “Iniciar navegador” inicia o navegador selecionado. Para este bloco, as seguintes propriedades são especificadas:
- Tipo de navegador (navegador que deve ser aberto);
- URL (link que deve ser aberto ao iniciar o navegador);
- Tempo de espera (tempo de espera para a abertura do navegador em segundos).
- O bloco “Condição” verifica a condição especificada quanto à veracidade, após o que a execução do script continua na direção da saída “Sim” (se a condição for verdadeira) ou na direção da saída “Não” (se a condição não for verdadeira).
A condição é escrita no formato: “variável” é igual (==)/ maior (>)/ menor (<) “valor”.
Por exemplo: $a == “Olá”, ou seja, se o valor da variável $a for igual a “Olá”, então a saída é “Sim”, caso contrário – a saída é “Não”.
$Result > 5, ou seja, se o valor da variável $Result for menor que 5, então a saída é “Sim”, caso contrário – a saída é “Não”.
Neste caso, é utilizada a condição de clique no botão “Fechar”, sendo estabelecido: $ControlEvent.Contains("CloseButton"). Ou seja, se a variável contém o texto "CloseButton", então a saída é “Sim”.