In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Browse com opção de marcar e tratar linha

Foro público de Xailer en español
Responder
wmsei
Mensajes: 28
Registrado: Lun Feb 18, 2013 9:07 pm

Browse com opção de marcar e tratar linha

Mensaje por wmsei »

Srs. bom dia,
Preciso montar um browse onde tenho vários itens a processar ao mesmo tempo. Preciso marcar/colorir os itens que preciso processar e após marcar esses itens e clicar em confirmar, o sistema ira rodar uma rotina que pegue somente os itens que estão marcados.
Grato pelo retorno e atenção.
Wagner
Avatar de Usuario
emeasoft
Mensajes: 1094
Registrado: Mié Abr 01, 2009 4:12 pm
Ubicación: emeasoft
Contactar:

Browse com opção de marcar e tratar linha

Mensaje por emeasoft »

Wagner,
Segue alguns exemplos:

::oArrayBrowse:nMarqueeStyle := bmHIGHLROWMS
...
...
::oBtnDelete:lEnabled:=(Len(::oArrayBrowse:aSelected)>0)
...
...
FOR i:=1 TO Len(::oArrayBrowse:aSelected)
valor:=::oArrayBrowse:GetRow(::oTela1:aSelected)[1]
NEXT

Mário Angelini
wmsei
Mensajes: 28
Registrado: Lun Feb 18, 2013 9:07 pm

Browse com opção de marcar e tratar linha

Mensaje por wmsei »

Mário bom dia,
Primeiramente obrigado pela presteza na resposta.
Desculpe minha ignorí¢ncia, esse objeto ::oTela1 o que seria isso e uma outra coisa quando utilizo ::oArrayBrowse:nMarqueeStyle := bmHIGHLROWMS, marco as linhas com Ctrl+Mouse as linhas, se quiser fazer isso com duplo clique, qual seria a opção.
Mais uma vez muito obrigado.
Wagner
Avatar de Usuario
emeasoft
Mensajes: 1094
Registrado: Mié Abr 01, 2009 4:12 pm
Ubicación: emeasoft
Contactar:

Browse com opção de marcar e tratar linha

Mensaje por emeasoft »

Wagner,
No exemplo ::oTela1 é um TArrayBrowse que uso e esqueci de
mudar no exemplo.
Se vocíª usar ::oArrayBrowse:nMarqueeStyle := bmHIGHLROWMS
funciona com todos os modos de marcação do Windows:
.CTRL+clique,
.SHIFT+clique, etc...
Mário
wmsei
Mensajes: 28
Registrado: Lun Feb 18, 2013 9:07 pm

Browse com opção de marcar e tratar linha

Mensaje por wmsei »

Mário boa tarde,
Entendi, no exemplo que iniciei estou usando o TDBrowse que nao tem a propriedade de GetRow, para usar TArrayBrowse teria que em primeiro lugar pegar os dados que quero que o browse mostra e ai sim fazer esse tipo de tratamento. Vi também que o TArrayBrowse tem alguns eventos a mais que TDBrowse, o que preciso fazer consigo com TDBrowse ou vocíª acha melhor com TArrayBrowse.
Grato pelo retorno e atenção.
Wagner
Avatar de Usuario
emeasoft
Mensajes: 1094
Registrado: Mié Abr 01, 2009 4:12 pm
Ubicación: emeasoft
Contactar:

Browse com opção de marcar e tratar linha

Mensaje por emeasoft »

Wagner,
Somente usamos o TArrayBrowse, pois achamos mais
fácil de trabalhar com ele.
Para carregar as colunas que quiser mostrar:
DO While ARQ->(!Eof())
IF...
::oArrayBrowse({col1,col2,col3,col4,col5})
ENDIF
ARQ->(DBSkip())
EndDo
Vocíª pode também criar uma coluna invisí­vel e nela
guardar o ARQ->(Recno()), por exemplo, para se
precisar ter o ponteiro da linha do ArrayBrowse com o arquivo.
Abraços
Mário
wmsei
Mensajes: 28
Registrado: Lun Feb 18, 2013 9:07 pm

Browse com opção de marcar e tratar linha

Mensaje por wmsei »

Mário boa tarde,
Usando TArrayBrowse, não consigo usar o duplo click para marcar uma linha desse browse, pelo que vocíª me enviou e li no forum, para marcar uma(s) linha(s) aperto CTRL+clique ou SHIFT+clique, tem como incluir uma coluna e trata-la como checkbox? Favor nos enviar um exemplo.
Grato pelo retorno e atenção.
Wagner
Responder