* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Novembre 24, 2024, 09:40:34 pm

Inserisci il nome utente, la password e la durata della sessione.

47 Visitatori, 0 Utenti

Autore Topic: Utilizzo di DBLookupCombo  (Letto 6862 volte)

Sanesi Stefano

  • Jr. Member
  • **
  • Post: 59
  • Karma: +0/-0
  • Memento Audere Semper
Utilizzo di DBLookupCombo
« il: Ottobre 01, 2014, 03:39:58 pm »
Ciò che ho letto finora (in ambiente Lazarus , anche su Free Pascal Wiki) approposito di questo comonente no mi è chiaro.

Essendo stato abituato ad usarlo in Delphi  impostando semplicemente LookupDisplay e LookupField mi funzionava.
Ho dato un'occhiata anche alla discussione su questo Forum, ma ci ho capito poco.
Problema :
Avendo una tabella : "Anagrafica" siffatta : Cognome, Nome, indirizzo - (una banale rubrica).
Vorrei mi apparisse nella combo la lista di tutti i "cognomi" presenti in "Anagrafica" (come fosse un indice di un libro),
in modo tale che cliccando su un cognome della lista , mi appaia nei campi DBEdit della form, il dettaglio di di quella riga della tabella "Anagrafica" cioè : cognome, nome, indirizzo , così da poterli visualizzare e/o modificare.
Nel caso della TAnagrafica di Delphi  Cognome l'avevo definito come chiave secondaria K-Cognome non unica.

Nel progettino che ho reallizzato con Lazarus ho impostato così le propietà di DBLookupCombo :
DataSource :DataSource legato alla ZQuery sulla tabella "Anagrafica" (SELECT * FROM ANAGRAFICA).
DataField : legato al campo Cognome presente nella Form come DBEdit, cosa che non mi torna, perchè le colonne di quella riga vorrei poterle modificare tutte.
ListSource : legato ad una ZQueryxCombo, che dovrebbe creare la lista di tutti i cognomi. Comando SQL : (SELECT Cognome FROM ANAGRAFICA).
In ListField, non capisco cosa ci vada.
Probailmente in KeyField ci andrà Cognome definito nella tabella come chiave ?

Scusate se sono andato .. a caso...


xinyiman

  • Administrator
  • Hero Member
  • *****
  • Post: 3276
  • Karma: +12/-0
Re:Utilizzo di DBLookupCombo
« Risposta #1 il: Ottobre 04, 2014, 07:08:47 pm »
In tutta onestà non ho capito bene qual'è il tuo problema
Ieri è passato, domani è futuro, oggi è un dono...

Sanesi Stefano

  • Jr. Member
  • **
  • Post: 59
  • Karma: +0/-0
  • Memento Audere Semper
Re:Utilizzo di DBLookupCombo
« Risposta #2 il: Ottobre 04, 2014, 10:50:07 pm »
il problema e' che la combo e' vuota ! quando ci clicco non si apre niente...almeno  impostando il tutto come ho spiegato.
In soldoni...esiste un semplice esempio su come impostarene le propieta'  ? di come va utilizzata ?

Stilgar

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2389
  • Karma: +10/-0
Re:Utilizzo di DBLookupCombo
« Risposta #3 il: Ottobre 06, 2014, 12:34:20 am »
Ciao.
Lookup è la chiave del probelma xinyiman.
Da quello che ho capito imposti solo il campo "target" ma non quello "source".
Nella tabelle pincopalla definisci il campo target e gli dici che è cognome.
Ma se non imposti una chiave dal quale pescare i dati da presentare a video la combo non fornirà nessun suggerimento valido.
Devi impostare le Lookup Key e Value. I nomi fanno venire qualche sospetto per su come impostarle ;) Nel caso la lookup key e value siano le stesse vanno impostate con lo stesso campo.

Onestamente spero di aver capito il problema e di aver dato la risposta giusta.... :D

Stilgar
Al mondo ci sono 10 tipi di persone ... chi capisce il binario e chi no.

Sanesi Stefano

  • Jr. Member
  • **
  • Post: 59
  • Karma: +0/-0
  • Memento Audere Semper
Re:Utilizzo di DBLookupCombo
« Risposta #4 il: Ottobre 09, 2014, 04:41:24 pm »
Rispondo a Stilgar che nelle propietà della mia  Lookup non vedo la "Lookup key" , proverò a spiegarmi meglio...inserendo le immagini della Lookuop con e propietà che ho impostato:
Ho una tabella "INDIRIZZI" così fatta : ID : chiave primaria , NOME,   COGNOME indice non unico, INDIRIZZO.
Un "DataSource1" legato alla query  "ZQueri1" con SQL  uguale a : (Select * From INDIRIZZI).
Un "DataSourceCombo" legato alla query "ZQueryCombo" con SQL uguale a : (Select COGNOME From INDIRIZZI).

Come vanno impostate le propietà della DBLookupCombo, in modo vi si leggano tutti i Cognomi presenti in tabella , così  da pater scegliere quello desiderato e vedere il dettaglio tabella nella Form ?
             

Sanesi Stefano

  • Jr. Member
  • **
  • Post: 59
  • Karma: +0/-0
  • Memento Audere Semper
Re:Utilizzo di DBLookupCombo
« Risposta #5 il: Ottobre 09, 2014, 04:43:17 pm »
Propietà DBLookupCombo1

Sanesi Stefano

  • Jr. Member
  • **
  • Post: 59
  • Karma: +0/-0
  • Memento Audere Semper
Re:Utilizzo di DBLookupCombo
« Risposta #6 il: Ottobre 09, 2014, 04:44:13 pm »
Propietà DBLookupCombo2

Sanesi Stefano

  • Jr. Member
  • **
  • Post: 59
  • Karma: +0/-0
  • Memento Audere Semper
Re:Utilizzo di DBLookupCombo
« Risposta #7 il: Ottobre 09, 2014, 04:45:20 pm »
Propietà DBLookupCombo 3

xinyiman

  • Administrator
  • Hero Member
  • *****
  • Post: 3276
  • Karma: +12/-0
Re:Utilizzo di DBLookupCombo
« Risposta #8 il: Ottobre 09, 2014, 04:52:28 pm »
Per capire come usare una dblookupcombobox basta esaminare l'esempio che trovi nella cartella dove è installato lazarus nella sottocartella

examples/database/dblookup
Ieri è passato, domani è futuro, oggi è un dono...

 

Recenti

How To

Utenti
  • Utenti in totale: 803
  • Latest: maXim.FI
Stats
  • Post in totale: 19185
  • Topic in totale: 2289
  • Online Today: 97
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 47
Total: 47

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.