Páginas filhas
  • FwQrCode

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: A função MyRefresh do exemplo estava incorreta, de tal maneira o exemplo não era compilado. foi alterada para user function MyRefresh e na chamada do botão alterado para U_MyRefresh

 

A classe FwQRCode, permite que seja adicionado um componente gráfico em video vídeo, capaz de exibir um grafico gráfico do tipo "QRCode".

O Código QR (Quick Response) é um código de barras bidimensional que pode ser escaneado usando a maioria dos celulares modernos equipados com câmera. Esse código pode ser convertido em um pedaço em pedaço de texto (interativo), um endereço URL endereço URL, um número  número de telefone, uma localização georreferenciada localização georreferenciada, um e e-mail, um contato contato, uma mensagem SMS, em informações de controle de  mensagem SMS, informações de controle de inventário, entre outros. Inicialmente criado pela empresa japonesa Denso-Wave em 1994 para identificar peças na indústria automobilística, seu uso  seu uso é livre de qualquer licença, sendo definido e publicado como um padrão ISO.


Observações:

  1. A utilização desta classe está disponível em ambientes Microsiga Protheus® 10 e Microsiga Protheus® 11, que possuam o fonte FwQrCode.prw com data igual ou superior à 31/07/12;
  2. Está condicionada à utilização do pacote de Binário de referência igual ou superior à 7.00.120420A - JUL 26 2012.
  
Métodos Disponíveis: 

New

Descrição: Método Construtor da Classe.

Parâmetros:

  1. aCoord
    Permite que sejam definidas as coordenadas iniciais do objeto em relação à Dialog/Window, sendo:
              1  - nLeft - Coordenada inicial em relação ao lado esquerdo do vídeo;
              2 - nTop - Coordenada inicial em relação ao topo do vídeo (parte superior);
              3 - nWidth - Largura em pixels do objeto;
              4 - nHeight - Altura em pixels do objeto;

  2. oDlg
    Objeto tipo Dialog ou Window utilizado como base para a criação do componente FwQrCode

  3. cCodigo
    String contemplando o código (URL,texto, número, etc.) a ser utilizado como referência na criação do QRCode.

Retorno:

  1. oFwQrCode
    Objeto FwQRCode instanciado.

Exemplo:
oQrCode := FwQrCode():New({25,25,200,200},oDlg,"http://www.totvs.com")


SetCodeBar

Descrição: Método que define o código (string) a ser utilizado na geração do código de barras QRCode, quando este não for informado por meio do parâmetro cCodigo do método New.

Parâmetros:

  1. cCodigo
    String contemplando o código (URL, texto, número, etc.) a ser utilizado como referência na criação do QRCode.


Retorno:

  1. Nil
    Não há retorno definido para este método.

Exemplo:
oQrCode:SetCodeBar("http://www.totvs.com")


GetCodeBar

Descrição:  Retorna o código (string) utilizado no QRCode exibido.

Retorno:

  1. cCodigo
    String contemplando o código (URL, texto, número, etc.) a ser utilizado como referência na criação do QRCode.

Exemplo:

cCodigo := oQrCode:GetCodeBar() 


Refresh

Descrição: Atualiza o objeto a partir das últimas definições realizadas. Pode ser utilizado em conjunto com o método SetCodeBar para atualizar um código recém-definido.

Retorno:

  1. Nil
    Não há retorno definido para este método

Exemplo: 

oQrCode:Refresh()


Exemplo:

#INCLUDE "PROTHEUS.CH"

//Consulte: http://tdn.totvs.com.br/display/mp/FwQrCode
User Function TstQrCode()
Local oDLG := Nil
Local cCodigo := "http://www.totvs.com.br" + Space(60)
Private oQrCode

//Cria a Dialog
DEFINE MSDIALOG oDlg TITLE "RDMAKE para teste da classe FwQrCode" FROM 0,0 TO 400,800 PIXEL

//Cria o objeto FwQrCode
oQrCode := FwQrCode():New({25,25,200,200},oDlg,cCodigo)

//Get com o codigo exibido
@25,150 GET oGet VAR cCodigo OF oDlg SIZE 200,10 PIXEL

//Botao Gerar
@45,150 BUTTON "Gerar" SIZE 30,20 PIXEL OF oDlg ACTION MsgRun("Gerando QRCode","Aguarde",{|| U_MyRefresh(cCodigo)}) PIXEL

//Exibe a Dialog em Video
ACTIVATE MSDIALOG oDlg CENTERED

Return

User Function MyRefresh(cNewCod)
oQrCode:SetCodeBar(cNewCod)
oQrCode:Refresh()
Return

Image Added