Com esta tag, o programador pode criar seu próprio conjunto de tags do Lua Form que sempre que forem usada, serão substituídas pelo conteúdo do template.
Observação: Esta tag não representa um componente do lua form e todas as tags que estão dentro do template só existirão de fato quando o modelo for invocado.
Propriedade |
Tipo |
Valor Padrão |
Descrição |
name |
String |
<Não há valor padrão> |
Nome do template. É através deste campo que o programador consegue invocar o modelo posteriormente, usando uma tag de mesmo nome. O preenchimento deste campo é obrigatório. |
<?xml version="1.0" encoding="UTF-8"?> <template name="MinhaTag"> </form> |
Neste exemplo, usando template, nós definimos um modelo chamado MinhaTag....
Mas só a definição do template não acarreta em nada! Veja como o exemplo acima fica:
É preciso invocar o modelo....
<?xml version="1.0" encoding="UTF-8"?> <template name="MinhaTag"> <MinhaTag/> |
Agora invocamos "MinhaTag" 4 vezes... Toda vez que usamos a tag "MinhaTag" no exemplo, ela foi substituída por uma cópia do conteúdo de template.
Se adicionarmos um edit ao template, o resultado mudaria para:
<?xml version="1.0" encoding="UTF-8"?> <template name="MinhaTag"> <MinhaTag/> |
É possível passar parâmetros para o template na hora da substituição! Para passar um parâmetro, basta definir um atributo ao invocar o modelo e para usar o parâmetro no modelo, o programador deve usar $(nomeDoAtributo) para a substituição parametrizada.
Exemplo:
<?xml version="1.0" encoding="UTF-8"?> <template name="MinhaTag"> <MinhaTag titulo="Força" conteudo="10"/> |
Observação: Quando a tag template é invocada com um corpo texto (Exemplo: <minhaTag>Corpo Texto</minhaTag>), um parâmetro chamado "body" é criado com este conteúdo.
É possível criar templates avançados usando A linguagem de programação LUA na hora da substituição.
Todo comentário de XML dentro de templates são tratados como códigos lua que devem ser executado no momento da substituição!
Exemplo:
<?xml version="1.0" encoding="UTF-8"?> <template name="Municao"> <Municao largura="300" titulo="Flechas" quantidade="20"/> |
Neste exemplo, o parâmetro "quantidade" é utilizado em um código LUA para emitir várias vezes a tag <checkBox> durante o tempo de substituição. Vários checkBox foram emitidos com pouco esforço.
<?xml version="1.0" encoding="UTF-8"?> <template name="LayoutUmCampo"> |
<?xml version="1.0" encoding="UTF-8"?> <template name="CampoEmUmLayoutDeCampos"> <template name="LayoutDeCampos"> <LayoutDeCampos> |
Created with the Personal Edition of HelpNDoc: Easily create Qt Help files