A classe FwQRCode permite que seja adicionado um componente gráfico em vídeo, capaz de exibir um 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 pedaço de texto (interativo), endereço URL, número de telefone, localização georreferenciada, e-mail, contato, 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 é livre de qualquer licença, sendo definido e publicado como um padrão ISO.
Observações:
Descrição: Método Construtor da Classe.
Parâmetros:
Retorno:
Exemplo:
oQrCode := FwQrCode():New({25,25,200,200},oDlg,"http://www.totvs.com")
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:
Retorno:
Exemplo:
oQrCode:SetCodeBar("http://www.totvs.com")
Descrição: Retorna o código (string) utilizado no QRCode exibido.
Retorno:
Exemplo:
cCodigo := oQrCode:GetCodeBar()
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:
Exemplo:
oQrCode:Refresh()
#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