Por Steve Donovan - Tradução Breno Ramalho Lemes
Parte 1 | Parte 2
Mesmo scripts simples precisam dar ao usuário um retorno. Caso contrário, as pessoas ficam ansiosas e começam a se preocupar se os seus arquivos já foram salvos, por exemplo. No IUPLua isso é fácil e leva exatamente uma linha. Note que todos os scripts IUP devem ter pelo menos uma instrução require 'iuplua'
no início:
É claro que, muitas operações exigem a confirmação do usuário. iup.Alarm
é projetado para isso:
Assim como iup.Message
, o primeiro parâmetro aparece na barra de título da caixa de diálogo, o segundo parâmetro aparece acima dos botões, mas iup.Alarm
permite que você especifique um número de botões. Então o código de retorno vai dizer qual botão foi pressionado, começando em 1
(que é sempre o jeito Lua).
A coisa mais comum que um script interativo vai pedir ao usuário é um arquivo, ou conjunto de arquivos. Para casos simples, iup.GetFile
fará o isso:
Isto irá lhe apresentar a caixa de diálogo abrir arquivo padrão do Windows, e permitir que você escolha um nome de arquivo, ou cancele a operação. Note que esta função retorna dois valores, o nome e um código. O código irá dizer se o arquivo não existe (caso, por exemplo, você digitou um novo nome na caixa de diálogo).
A maneira mais simples de obter texto em geral é usar iup.GetText
:
Se usar esta janela, você pode inserir quantas linhas quiser, e pressionar OK.
A melhor opção para pedir uma única string é a muito versátil iup.GetParam
:
Há duas vantagens sobre a iup.GetText simples, você pode dar uma linha de comando, onde você pode pressionar enter depois de digitar o texto.
O código %s
precisa de alguma explicação. Embora você possa de início achar que é um código de formatação estilo C, como você usaria em string.format, na verdade ele descreve como o valor será editado; %s
aqui significa simplesmente que uma caixa de texto normal é usada, se você usasse %m
, então seria uma caixa de texto de várias linhas (como aquela utilizada pelo iup.GetText
).
Se existe um conjunto limitado de opções, então o formato de l%
é útil:
Observe a lista |item1|item2|...|
após o formato l%
, estas são as opções apresentadas para o usuário. O valor inicial que você dá e o valor que você recebe, serão um índice para a lista de opções. Um pouco confuso, eles começam em 0
(o que não é o jeito Lua!). Então neste caso, 0
significa que "Professor" deve estar selecionado, e se eu selecionar "Engenheiro", então o valor resultante de prof seria 2
.
O código i%
permite que você insira um número inteiro, com setas para aumentar/diminuir o valor.
Parte 1 | Parte 2
NOTAS DA TRADUÇÃO: você pode baixar um arquivo com todos exemplos desta parte do guia (com as mensagens traduzidas) e também um interpretador Lua e as bibliotecas IupLua para Windows: guiaiuplua-parte2.zip.
br_lemes, o Zumbi insano (Hipossônia)
Theme by Breno Ramalho Lemes under Creative Commons Attribution, based on Jekyll Clean by Scott Emmons and icons by FatCow.