FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Combobox Busqueda Incremental
Posts: 243
Joined: Wed Sep 19, 2007 04:32 PM

Combobox Busqueda Incremental

Posted: Thu Sep 08, 2011 03:45 PM

Hola amigos

Estoy pasando mi codigo de la FWH 9.06 a la FWH 10.10 y me he encontrado, que la busqueda incremental (incremental search) en la clase combobox no trabaja correctamente en esta version.

Alguien ha hallado como solucionar este problema?

Saludos

Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
Posts: 243
Joined: Wed Sep 19, 2007 04:32 PM

Re: Combobox Busqueda Incremental

Posted: Thu Sep 08, 2011 04:56 PM
Hola

Olvide mencionar que es desde recursos.
Y por cierto en el combobox tipo CBS_SIMPLE, la busqueda funciona perfectamente, no asi en CBS_DROPDOWNLIST, al omitir
Code (fw): Select all Collapse
   oGet[6]:lIncSearch := .T.  && Activa busqueda incremental


Busca solo la primera letra, en la version 9.06 funcionaba con el codigo anterios, alguien tiene algun hilo que hacer en esta version :-)

Saludos
Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
Posts: 3
Joined: Wed Jan 30, 2008 02:35 PM

Re: Combobox Busqueda Incremental

Posted: Sat Sep 17, 2011 05:20 PM

aprovechando tu post

con esta funcion se puede realizar la busqueda tipo google?

al ir escribiendo va mostrando los registros que van cumpliendo con dicha busqueda, es posible?

gracias anticipadas

Tomas Hernandez

Posts: 243
Joined: Wed Sep 19, 2007 04:32 PM

Re: Combobox Busqueda Incremental

Posted: Mon Sep 19, 2011 02:39 PM

Hola Tomas

Bueno cuando funcionaba...
Te ubicaba a medida que escribias en el elemento a que correspondia.
Lo que hace la busqueda de google es filtrar, y eso se puede hacer pero el problema es que los combos se cargan a memoria, y cuando las tablas crecen, dejan de ser amigables convirtiendose en largas esperas :( ; aun el DBCOMBO trabaja subiendo los valores de la tabla a memoria, no se gestionan los registros sino arreglos de memoria.

Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
Posts: 243
Joined: Wed Sep 19, 2007 04:32 PM

Re: Combobox Busqueda Incremental

Posted: Wed Sep 21, 2011 10:45 PM

Hola

He intentado compilar la clase Combobox de la FWH 9.06, que era con la que me funcionaba la busqueda incremental,y despues de hacer un par de malabares funciono, Ya que en la FWH 10.10 no anda bien
Espero no tener lios con otras clases, me preocupa la clase Get, veremos

Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
Posts: 243
Joined: Wed Sep 19, 2007 04:32 PM

Re: Combobox Busqueda Incremental

Posted: Wed Sep 21, 2011 11:29 PM

Una pregunta en la 11.08

Ya se soluciono esto de la busqueda incremental ??

Estos detalles podran parecer pequeños, pero soy muy significantes al menos en mis aplicaciones :(

Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
Posts: 3
Joined: Wed Jan 30, 2008 02:35 PM

Re: Combobox Busqueda Incremental

Posted: Thu Oct 13, 2011 04:33 PM
Blessed wrote:Hola Tomas

Bueno cuando funcionaba...
Te ubicaba a medida que escribias en el elemento a que correspondia.
Lo que hace la busqueda de google es filtrar, y eso se puede hacer pero el problema es que los combos se cargan a memoria, y cuando las tablas crecen, dejan de ser amigables convirtiendose en largas esperas :-) ; aun el DBCOMBO trabaja subiendo los valores de la tabla a memoria, no se gestionan los registros sino arreglos de memoria.



gracias por responder

tendrás algún ejemplo? para revisarlo ?

gracias
Posts: 411
Joined: Sun Jan 31, 2010 03:30 PM

Re: Combobox Busqueda Incremental

Posted: Tue Dec 20, 2011 03:29 PM

// CAMBIOS EN LA CLASE DBCOMBO.PRG ... Y ME ESTA FUNCIONANDO

CLASS TDBCombo FROM TComboBox

DATA cSearchBackup // JOHNSON RUSSI - DIC 20 DE 2011

///

METHOD New( nRow, nCol, bSetGet, aItems, nWidth, nHeight, oWnd, nHelpId, ;
bChange, bValid, nClrFore, nClrBack, lPixel, oFont, ;
cMsg, lUpdate, bWhen, lDesign, acBitmaps, bDrawItem, ;
cAlias, cFldItem, cFldList, aList ) CLASS TDBCombo

DEFAULT cAlias := alias(), ;
cFldList := "", ;
cFldItem := "", ;
aList := {},;
aItems:= {}

::aList := aList
::aItems := aItems
::cAlias := cAlias
::cFldList := cFldList
::cFldItem := cFldItem
::cSearchKey:=""

::cSearchBackup :="" // JOHNSON RUSSI - DIC 20 DE 2011

METHOD KeyChar( nKey, nFlags) CLASS TDBCombo

local nNewAT := 0, nOldAT:=::nAT

::cSearchKey := ::cSearchBackup // JOHNSON RUSSI - DIC 20 DE 2011

// Incremental search
if nKey = VK_BACK // VK_BACK RESETEA L ABUSQUEDA , SE QUITA EL VK_SPACE , PARA PODER BUSCAR EN ORACIONES : "NOTA CREDITO" // JOHNSON RUSSI - DIC 20 DE 2011
::cSearchKey := ""
::cSearchBackup := "" // JOHNSON RUSSI - DIC 20 DE 2011
::Set( If( ValType( Eval( ::bSetGet ) ) == "N", 1, ::aItems[ 1 ] ) )
else

  if nKey = 45    //  CON EL SIGNO (-) BORRA ULTIMO CARACTER  JOHNSON RUSSI - DIC 20 DE 2011  
     ::cSearchKey := left(::cSearchKey,Len(::cSearchKey)-1)
  else
     ::cSearchKey += upper(chr(nKey))
  endif

  ::cSearchBackup := ::cSearchKey   // JOHNSON RUSSI - DIC 20 DE 2011

  nNewAT := ascan(::aList, {|x| subs(upper(x),1,len(::cSearchKey)) == ::cSearchKey} )  // JOHNSON RUSSI - DIC 20 DE 2011

Continue the discussion