CAPÍTULO 3
Programação visual com Software Livre
EDIT LIN EDITORIAL S.L,  dos autores  Daniel Campos Fernández e José Luis Redrejo.  Prólogo de Benoit Minisini



3.4 Diálogos
A classe Message





    Gambas tem uma série de diálogos auxiliares para mostrar ou receber informações interagindo com o usuário.

    A classe Message

    A classe Message  se encarrega  de mostrar uma janela modal ao usuário, na qual podemos definir um texto, que será uma informação ou uma pergunta, e uma série de botões para escolher uma opção. A classe Message é estática, e dispõe de uma série de métodos para mostrar distintos tipos de mensagens, que serão reconhecido pelo usuário graças ao ícone que acompanha a janela e que da uma ideia do caráter da mensagem. Nestes métodos teremos sempre, como primeiro parâmetro, o texto a mostrar e, os seguintes, os botões, que são no máximo três. Se não indicarmos o texto dos botões, aparecerá apenas um botão indicando OK     para que o usuário aceite a leitura da mensagem.
* Message.Info: (Texto, Botão):

É utilizada para mostrar uma mensagem meramente informativa. Só permite definir um botão, que normalmente terá um texto tal como OK ou Aceitar.
Figura 8
Figura 8. Mensagem informativa.

A classe Message também pode ser chamada como uma função, de modo que o código:

Message.Info (Mensagem”)

É equivalente a:

Message (“Mensagem”)
* Message.Delet: (Texto, Botão1, Botão2, botão3):

É utilizada para avisar que algo vai ser eliminado (arquivo, registro de uma tabela .....), e é solicitado ao usuário sua confirmação.
Figura 9
Figura 9. Mensagem de eliminação.
*Message.Error: (Texto, Botão1, Botão2, botão3):

É utilizada para indicar uma mensagem de erro.
Figura 10
Figura 10. Mensagem de erro.
*Message.Question: (Texto, Botão1, Botão2, botão3):

É uma pergunta ao usuário, geralmente para confirmar uma ação ou uma opção de configuração.
Figura 11
Figura 11. Mensagem para perguntar.
*Message.Warning: (Texto, Botão1, Botão2, botão3):

Adverte o usuário que a ação que vai realizar pode ser perigosa, por exemplo perda de dados de uma tabela que poderiam ser úteis ainda.
Figura 12
Figura 12. Mensagem de advertência
Os métodos da classe Message devolvem um número inteiro que destaca o botão que o usuário pressionou. O primeiro botão começa com o número 1. as mensagens são modais, o que quer dizer que há interação da interface do usuário com o programa, assim como o fluxo deste, fica bloqueado ate que se pressione um dos botões.
.......

DIM hRes AS Integer

hRes = Message.Warning ( " Formatar o disco Rígido", "Sim", "Não" )

IF hRes = 1 THEN Formatar o Disco()

END

.........
Depende do gestor de janelas do sistema, é possível que as caixas de diálogo tenham um botão de fechar. De o usuário fechar a mensagem deste modo, retornará o numero do botão existente mais alto (no exemplo anterior é o 2), portanto a opção menos perigosa, é que deve executar por padrão, deveremos indicar o botão mais alto.
Figura 13
Figura 13. Diálogo com botão de fechar.

* Dialog.Filter: permite indicar filtros para os arquivos a mostrar. Se trata de uma matriz de cadeias na qual podemos especificar, por exemplo, as extensões dos arquivos a escolher, coringas como desejarmos.

* Dialog.Title: permite estabelecer um título para a janela, Que por padrão corresponderá a ação e realizar (Select Font, Select Color, etc.).

.......

Dialog.title =  " Selecionar Imagens a processar "

Dialog.Filter = [ " * . png "   " . jpg " ]

IF Dialog.Openfile (TRUE) THEN

Message.info ( " Ação Cancelada " )

ELSE

Processa_Imagens (Dialog.Path)

END IF
.........




HOME

Cópia literal

Extraído do livro “GAMBAS, programação visual com software Livre”, da editora EDIT LIN EDITORIAL S.L,  dos autores  Daniel Campos Fernández e José Luis Redrejo. Prólogo de Benoit Minisini

LICENSA DESTE DOCUMENTO


É permitido a cópia e distribuição da totalidade ou parte desta obra sem fins lucrativo. Toda cópia total ou parcial devera expressar o nome do autor e da editora e incluir esta mesma licença, adicionando se é uma cópia literal “Cópia literal”. Se é autorizada a modificação e tradução da obra  sem fins lucrativo sempre se deve constar na obra resultante  a modificação o nome da obra original o autor da obra original e o nome da editora e a obra resultante também deverá ser livremente reproduzida, distribuída, ao publico e transformada em termos similares ao exposto nesta licença.

Tradução

Cientista
 (Antonio Sousa)