|
FOROS PROFESIONALES WINDEV, WEBDEV y WINDEV Mobile |
| | | | | |
Exemplo Windev com python |
Iniciado por Boller, 04,feb. 2025 14:56 - No hay respuesta |
| |
| | | |
|
| |
Miembro registrado 4.521 mensajes |
|
Publicado el 04,febrero 2025 - 14:56 |
Aqui está um exemplo simples que integra WinDev e Python para realizar uma tarefa básica: passar dados do WinDev para um script Python, processá-los, e retornar o resultado para o WinDev. Vamos criar um cenário onde o usuário insere dois números no WinDev, o Python faz a soma, e o resultado é exibido de volta no aplicativo WinDev.
1. Script Python (processamento de dados)
O script Python receberá dois números como argumentos e retornará a soma.
Arquivo: sum_numbers.py
import sys import json
def main(): if len(sys.argv) != 3: print(json.dumps({"error": "Dois argumentos são necessários."})) return try: num1 = float(sys.argv[1]) num2 = float(sys.argv[2]) result = num1 + num2 print(json.dumps({"result": result})) except ValueError: print(json.dumps({"error": "Os argumentos devem ser números."}))
if __name__ == "__main__": main()
Salve este arquivo na mesma pasta do projeto WinDev.
2. Código WinDev (chamando o Python)
O código abaixo cria uma janela simples no WinDev onde o usuário pode inserir dois números e clicar em um botão para ver o resultado da soma.
Passos para criar o projeto no WinDev: 1. Crie um novo projeto no WinDev. 2. Adicione uma Janela com os seguintes elementos: • Dois campos de entrada numérica (EDT_Num1 e EDT_Num2) • Um botão (BTN_Calcular) com a legenda “Calcular Soma” • Um campo estático (STC_Resultado) para exibir o resultado 3. No evento “Clique” do botão BTN_Calcular, insira o seguinte código:
// Obter os valores inseridos nNum1 IS real = EDT_Num1 nNum2 IS real = EDT_Num2
// Definir o caminho do Python e do script sPythonPath IS string = "python" // Certifique-se que o Python está no PATH ou use o caminho completo sScriptPath IS string = CompleteDir(fCurrentDir()) + "sum_numbers.py"
// Construir o comando para chamar o Python sCommand IS string = sPythonPath + " " + sScriptPath + " " + NumToString(nNum1) + " " + NumToString(nNum2)
// Executar o script Python e capturar a saída sOutput IS string = ExeRun(sCommand, exeReturnStandardOutput)
// Interpretar o resultado (JSON) IF sOutput ~= "" THEN JSONResult IS JSON = sOutput IF JSONResult.result..Exist THEN STC_Resultado = "Resultado da soma: " + JSONResult.result ELSE STC_Resultado = "Erro: " + JSONResult.error END ELSE STC_Resultado = "Erro ao executar o script Python." END
Explicação do Código: 1. Recebendo Dados do Usuário: O WinDev coleta os números inseridos pelo usuário nos campos EDT_Num1 e EDT_Num2. 2. Chamando o Script Python: O comando ExeRun() executa o script Python, passando os números como argumentos. 3. Capturando e Interpretando a Resposta: O script Python retorna o resultado em formato JSON. O WinDev interpreta o JSON usando a estrutura JSON e exibe o resultado em STC_Resultado.
Executando o Projeto: 1. Certifique-se que o Python está instalado e configurado no PATH do sistema. 2. Salve o script Python (sum_numbers.py) na mesma pasta do seu projeto WinDev. 3. Execute o projeto no WinDev, insira dois números e clique em Calcular Soma.
Isso demonstrará uma integração básica entre WinDev e Python. Se quiser expandir isso para tarefas mais complexas, como processamento de dados, IA ou automação, é só avisar!
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 99949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/ |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|