FranciscoA wrote:Hola.
//Restringir cantidad de registros seleccionados.
//Con Ctrl+Click funciona bien... con Shift+flecha-abajo, no.
oBrw:bKeyDown := { || if(len(oBrw:aSelected) = 3, MsgInfo("Seleccion maxima agotada"+STR(len(oBrw:aSelected))),) }
Si bien es cierto que usando Shift+flecha-Abj aSelect se incrementa, no obedece a la condicion expuesta arriba en oBrw:bKeyDown.
Con Shift + flecha-abajo, solo funciona si el usuario suelta la Shift y la vuelve a presionar. Creo que xBrowse necesita adaptarse a este comportamiento.
Por esto último es que abrí el post "Simular soltar y oprimir una tecla"
Saludos.
Saludos Francisco, disculpa te contradiga en lo que dices que no funciona la multi-seleccion con Shift+flecha-Abj/flecha Arr , me pusistes a dudar de lo que dije, asi que volvi a revisarlo y estoy en lo correcto, a mi me funciona sin ningun problema Shift + flecha arriba e igual flecha abajo sin necesidad de soltar el shift, igual lo uso en combinacion ctrl+click y todo funciona perfecto...acabo hacer una prueba antes de escribir, por eso lo dije y lo mantengo...saludos...
joseluisysturiz wrote:Ariel, el aSelect contiene es la posicion del registro seleccionado, no de columna, por lo cual cuando aSelect es mayor a cero, entonces se han hecho selecciones, tienes que tener en cuenta, que cuando marcas 1 solo registro en el xbrowse, automaticamente aSelect se incremente, eso quiere decir que casi siempre por defecto si hay click sobre un registro, entoces alimenta aSelect, para ir seleccionando los demas, debes usar tecla ctrl o shift, yo por lo menos valido LEN de aSelect al hacer click sobre un boton, igual puedes ver esta linea en la clase xBrowse a ver si responde mejor tu pregunta y revisa METHOD Select( nOperation ) CLASS TXBrowse, saludos...
lHighLite := ::lMultiSelect .and. ( Ascan( ::aSelected, Eval( ::bBookMark ) ) > 0 )
if ::lMultiSelect .and. ( nStyle == MARQSTYLE_HIGHLROWMS .or. ::nMarqueeStyle == MARQSTYLE_HIGHLWIN7 )
lHighLite := ( Ascan( ::aSelected, Eval( ::bBookMark ) ) > 0 )
endif
Ariel wrote:hola a todos,
alguien sabe como puedo controlar la multiseleccion en un xbrowse con :
oBrw:nMarqueeStyle:= MARQSTYLE_HIGHLWIN7
oBrw:lMultiSelect := .t.
x ejemplo, que no pueda elegir mas de 5 items ?
Gracias,
Salu2, Ariel.
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: No registered users and 51 guests