COMBOBOX

Moderator: Enrico Maria Giordano

COMBOBOX

Postby Ugo » Fri Dec 30, 2005 8:28 pm

Ho dei combobox con degli elenchi abbastanza lunghi, vorrei sapere se esiste qualche modifica per cercare l'item digitando più caratteri.
Il combo std al carattere successivo digitato sposta l'indice sul primo che soddisfa il secondo carattere.

Grazie per le risposte.
Ciao, best regards,
Ugo
User avatar
Ugo
 
Posts: 283
Joined: Sat Oct 15, 2005 6:40 am
Location: Turin, Italy

Re: COMBOBOX

Postby Enrico Maria Giordano » Fri Dec 30, 2005 9:28 pm

Io per questo motivo e soprattutto per il fatto che i normali combo diventano presto inusabili a causa della lentezza del caricamento quando i records sono tanti, mi sono fatto un simil combo realizzato con una GET più una TWBrowse.

EMG
User avatar
Enrico Maria Giordano
 
Posts: 8307
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia

Re: COMBOBOX

Postby Ugo » Fri Dec 30, 2005 10:21 pm

EnricoMaria wrote:Io per questo motivo e soprattutto per il fatto che i normali combo diventano presto inusabili a causa della lentezza del caricamento quando i records sono tanti, mi sono fatto un simil combo realizzato con una GET più una TWBrowse


Enrico,
ci avevo pensato ma fai apparire il TWBrowse o dedichi uno spazio apposta nella dialog?
e, se lo fai apparire come fai a farlo stare sopra il resto?

Ciao e Grazie.
Ciao, best regards,
Ugo
User avatar
Ugo
 
Posts: 283
Joined: Sat Oct 15, 2005 6:40 am
Location: Turin, Italy

Re: COMBOBOX

Postby Enrico Maria Giordano » Fri Dec 30, 2005 10:24 pm

Uso una dialog senza il bordo. Praticamente come fa il metodo TWBrowse:lEditCol() che fa apparire una GET sulla cella di una TWBrowse.

EMG
User avatar
Enrico Maria Giordano
 
Posts: 8307
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia

Postby Ugo » Fri Dec 30, 2005 10:39 pm

Sai se ci sono degli esempi già fatti?
Almeno per fare qualche prova?
Ciao, best regards,
Ugo
User avatar
Ugo
 
Posts: 283
Joined: Sat Oct 15, 2005 6:40 am
Location: Turin, Italy

Postby Enrico Maria Giordano » Fri Dec 30, 2005 11:34 pm

Non che io sappia.

EMG
User avatar
Enrico Maria Giordano
 
Posts: 8307
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia

Postby juanito » Tue Jan 03, 2006 8:08 am

Ciao Ugo,
io faccio così:
****************
FUNCTION Main()
****************
.....................................
....................................
REDEFINE GET oLDL VAR cLDL ID 109 OF oFld:aDialogs[6] READONLY FONT oFont2
REDEFINE BTNBMP oBtnLDL ID 110 OF oFld:aDialogs[6] RESOURCE "search" ;
ACTION IIF(TabeSea("Legali","Ricerca Legali",2),(cLDLCod:=Legali->CodLeg,;
cLDL:=Legali->NomLeg,oLDL:Refresh()),)
oBtnLDL:cTOOLTIP:="Apre finestra Legali"
..............................
...........................
RETURN( nil )
*************************************************
FUNCTION TabeSea( cFile,cTit,nTab ) // RICERCA TABELLE
*************************************************
LOCAL oDlg, oBtnExt, oBtnNew, oBtnAll, oBtnPrn, oBtnHlp, oLbx, oBmp, oIco
LOCAL cCerca:= ""
LOCAL lSave := .f.

(cFile)->(DBSETORDER(2))
SELECT (cFile)
(cFile)->(DBGOTOP())
DEFINE FONT oFont1 NAME "MS SANS SERIF" SIZE 0, -8 BOLD
DEFINE ICON oIco RESOURCE "ricerca"
DEFINE DIALOG oDlg RESOURCE "win" TITLE cTit FONT oFont1 ICON oIco
REDEFINE BITMAP oBmp ID 101 OF oDlg RESOURCE "scritta"
REDEFINE LISTBOX oLbx FIELDS (cFile)->TabCod,(cFile)->TabDes;
ID 102 OF oDlg HEADERS "Codice", "Descrizione" ;
FIELDSIZES 80,200 COLOR "B*/W+" FONT oFont2
oLbx:aJustify := {.F.,.F.}
oLbx:nClrForeHead:= CLR_HRED
oLbx:bKeyDown := {|nKey|IIF(nKey == VK_RETURN,(lSave := .t.,oDlg:End() ) ,;
(cCerca+=UPPER(CHR(nKey)),IIF(!(cFile)->(DBSEEK(cCerca)),;
(cCerca:="",oLbx:GoTop()),))),oLbx:Refresh()}
oLbx:bLDblClick := {||cCerca:="",lSave:=.t.,oDlg:End()}
REDEFINE BUTTON oBtnExt ID 580 OF oDlg ACTION (oDlg:End())
oBtnExt:cTOOLTIP:="Esce senza selezione"
REDEFINE BUTTON oBtnNew ID 510 OF oDlg ACTION (Tabelle(nTab),;
oLbx:GoTop(),oLbx:Refresh())
oBtnNew:cTOOLTIP:="Nuovo Record"
REDEFINE BUTTON oBtnAll ID 670 OF oDlg
REDEFINE BUTTON oBtnPrn ID 590 OF oDlg
REDEFINE BUTTON oBtnHlp ID 730 OF oDlg
oBmp:lTransparent:=.t.
ACTIVATE DIALOG oDlg CENTERED ON INIT oLbx:GoTop()
(cFile)->(DBSETORDER(1))
RETURN( lSave )

Spero possa esserti di aiuto.
Giovanni Cacciotti
User avatar
juanito
 
Posts: 31
Joined: Mon Nov 07, 2005 11:27 am
Location: italia

Postby Ugo » Tue Jan 03, 2006 9:11 pm

Ciao Giovanni,
iniziato bene l'anno?
spero di si!

Lo provo e ti dico...
...sicuramente è meglio di niente. ;)

Ciao e grazie,
Ugo
Ciao, best regards,
Ugo
User avatar
Ugo
 
Posts: 283
Joined: Sat Oct 15, 2005 6:40 am
Location: Turin, Italy


Return to All products support

Who is online

Users browsing this forum: No registered users and 4 guests