🚀 ADVPL TcBrowse e TcColumn: Campos com Marcação Dinâmica
Aprenda na prática como implementar marcação de registros utilizando TcBrowse e TcColumn no ADVPL 💡
Ideal para telas interativas, seleção de itens e melhorias na experiência do usuário 🔥
📌 Exemplo prático:
User Function Exem()
Private oOk := LoadBitMap(GetResources(), 'LBOK' )
Private oNo := LoadBitMap(GetResources(), 'LBNO' )
Private cBrwBlock := ''
Private nPosD2 := 00
Private fD2OK := ++nPosD2
Private fD2COD := ++nPosD2
Private fD2QUANT := ++nPosD2
Private fD2CLIENTE := ++nPosD2
Private fD2LOJA := ++nPosD2
Private fD2TOTAL := ++nPosD2
oBrw := TCBrowse():New( 040 , 015, 380, 140,,{},{1,220,050, 1},oPnlItens,,,,, ,,,,,,,.F.,,.T.,,.F.,,, )
oBrw:AddColumn( TCColumn():New(" ",
&(" { || If(aBrw[oBrw:nAt, "+Str(fD2OK,4)+"], oOk, oNo) } "),
,{|| },{|| }, , 060, .T., .F.,,,,.F. ) ) // 🟢 Coluna de imagem (marcação)
oBrw:AddColumn( TCColumn():New("Produto",
&(" { || aBrw[oBrw:nAt,"+cValtoChar(fD2COD)+"] } "),
,{|| },{|| }, , 100) )
oBrw:AddColumn( TCColumn():New("Qtd",
&(" { || aBrw[oBrw:nAt,"+cValtoChar(fD2QUANT)+"] } "),
PesqPict('SD2','D2_QUANT'),{|| },{|| }, , 100) )
oBrw:AddColumn( TCColumn():New("Cliente",
&(" { || aBrw[oBrw:nAt,"+cValtoChar(fD2CLIENTE)+"] } "),
,{|| },{|| }, , 100) )
oBrw:AddColumn( TCColumn():New("Loja",
&(" { || aBrw[oBrw:nAt,"+cValtoChar(fD2LOJA)+"] } "),
,{|| },{|| }, , 100) )
oBrw:AddColumn( TCColumn():New("Total",
&(" { || aBrw[oBrw:nAt,"+cValtoChar(fD2TOTAL)+"] } "),
,{|| },{|| }, , 100) )
oBrw:SetArray( aBrw )
oBrw:Refresh(.T.)
// ⚡ Ação ao dar duplo clique (edição ou marcação)
oBrw:bLDblClick := {|| lEditField(oBrw, aBrw) }
oBrw:Align := CONTROL_ALIGN_ALLCLIENT
Return( Nil )
💡 Dica: Utilize a coluna de imagem para representar estados como selecionado / não selecionado, melhorando a usabilidade e deixando a interface mais intuitiva 👨💻✨
🔥 Esse padrão é muito utilizado em rotinas de seleção múltipla, processamentos em lote e telas customizadas no Protheus.
👍 Gostou do conteúdo?
Compartilhe com outros desenvolvedores e fortaleça a comunidade ADVPL / TOTVS! 💙🚀
Deixe seu comentário com dúvidas ou sugestões! 😎
#ADVPL #TOTVS #Protheus #TcBrowse #TcColumn #DesenvolvimentoERP #ProgramacaoADVPL #ERP #BackEnd #Automacao #SistemaERP #CodigoADVPL #DevBrasil #Programacao #DicasADVPL #CustomizacaoProtheus