Nesse vídeo demonstraremos a utilização da classe TSimpleEditor, que serve para criar um editor em tela, que aceita também HTML.
Abaixo o código fonte desenvolvido para o exemplo em vídeo acima:
//Bibliotecas #Include "TOTVS.ch" /*/{Protheus.doc} User Function zExe509 Cria uma caixa de texto grande para digitação / visualização (com algumas opções como exibir em html) @type Function @author Atilio @since 04/04/2023 @see https://tdn.totvs.com/display/tec/TSimpleEditor @obs **** Apoie nosso projeto, se inscreva em https://www.youtube.com/TerminalDeInformacao **** /*/ User Function zExe509() Local aArea := FWGetArea() Local nCorFundo := RGB(238, 238, 238) Local nJanAltura := 154 Local nJanLargur := 318 Local cJanTitulo := 'Exemplo TSimpleEditor' Local lDimPixels := .T. Local lCentraliz := .T. Local nObjLinha := 0 Local nObjColun := 0 Local nObjLargu := 0 Local nObjAltur := 0 Private cFontNome := 'Tahoma' Private oFontPadrao := TFont():New(cFontNome, , -12) Private oDialogPvt Private bBlocoIni := {|| /*fSuaFuncao()*/ } //Aqui voce pode acionar funcoes customizadas que irao ser acionadas ao abrir a dialog //objeto0 Private oSimpEdit Private cSimpEdit := '' //objeto1 Private oBtnObj1 Private cBtnObj1 := 'Confirmar' Private bBtnObj1 := {|| MsgInfo('O texto digitado foi:' + CRLF + CRLF + oSimpEdit:RetText(), 'Atenção')} //Cria a dialog oDialogPvt := TDialog():New(0, 0, nJanAltura, nJanLargur, cJanTitulo, , , , , , nCorFundo, , , lDimPixels) //Monta o texto que será exibido cSimpEdit := '<p>Olá.</p>' + CRLF cSimpEdit += '<p>Esse é um exemplo de <strong>mensagem em HTML</strong>.</p>' + CRLF cSimpEdit += '<p>Note que as <font color="red">tags foram interpretadas</font>.</p>' + CRLF //objeto0 - usando a classe TSimpleEditor nObjLinha := 7 nObjColun := 6 nObjLargu := 145 nObjAltur := 40 oPanelEdit := tPanel():New(nObjLinha, nObjColun, "", oDialogPvt, , , , RGB(000,000,000), RGB(254,254,254), nObjLargu, nObjAltur) oSimpEdit := TSimpleEditor():Create(oPanelEdit) oSimpEdit:lAutoIndent := .T. oSimpEdit:nWidth := oPanelEdit:nWidth oSimpEdit:nHeight := oPanelEdit:nHeight oSimpEdit:TextFormat(1) //1=Html; 2=Plain Text oSimpEdit:TextSize(11) oSimpEdit:Load(cSimpEdit) oSimpEdit:Refresh() //objeto1 - usando a classe TButton nObjLinha := 54 nObjColun := 6 nObjLargu := 75 nObjAltur := 15 oBtnObj1 := TButton():New(nObjLinha, nObjColun, cBtnObj1, oDialogPvt, bBtnObj1, nObjLargu, nObjAltur, , oFontPadrao, , lDimPixels) //Ativa e exibe a janela oDialogPvt:Activate(, , , lCentraliz, , , bBlocoIni) FWRestArea(aArea) Return
Bom pessoal, por hoje é só.
Abraços e até próxima.
Muito bom o seu vídeo, gostei bastante, assim como os outros conteúdos do site.
Estou desenvolvendo uma rotina que inclui componentes que aceitam CSS. Na documentação da TDN, observei que existem várias classes que herdam da classe TControl. Isso me levantou algumas dúvidas: todas as classes aceitam personalização com CSS? Existe alguma documentação oficial que mostra o relacionamento entre os componentes do QT e os componentes em TL++? Quais versões são aceitas? Quais atributos não funcionam no Protheus?
Curto muito o seu trabalho!.
Bom dia Kauan, tudo joia?
Primeiramente obrigado pelo elogio, é muita bondade e generosidade sua.
Da documentação no TDN, tem uma com uma lista relacionando as classes do Protheus com QT (ver link do passo c abaixo).
A forma que fiz para encontrar foi a seguinte:
a. Instalei a extensão de navegador Pesquisa Rápida TDN – https://atiliosistemas.com/portfolio/pesquisa-rapida-tdn/
b. Ao usar a extensão, pesquisei apenas por “SetCSS”
c. Foi o segundo link da lista exibida, que é esse aqui – https://tdn.totvs.com/display/tec/SetCSS
Espero ter ajudado.
Um grande abraço.