AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken LookUpCombobox.Properties.items.count bleibt 0
Thema durchsuchen
Ansicht
Themen-Optionen

LookUpCombobox.Properties.items.count bleibt 0

Ein Thema von Khanysha · begonnen am 10. Nov 2016 · letzter Beitrag vom 10. Nov 2016
Antwort Antwort
Khanysha

Registriert seit: 11. Jun 2015
Ort: Dunkeldeutschland
23 Beiträge
 
Delphi 7 Professional
 
#1

LookUpCombobox.Properties.items.count bleibt 0

  Alt 10. Nov 2016, 10:33
Datenbank: SQLite • Version: 3.9.2 • Zugriff über: UniDac
Hallo zusammen,
ich habe mal wieder ein Verständnisproblem und finde in der SuFu auch nicht die Antwort die das Klicken im Kopf bei mir auslöst.

Folgendes Problem habe ich:
Ich habe eine Datenbank in der 4 Tabellen liegen. Für 3 Tabellen gibt es je eine LookUpCombobox, um die Werte auswählen zu können. Im späteren Projekt möchte ich die Comboboxen fragen, ob sie einen Wert enthalten und wenn ja, sollen diese Werte in die 4. Tabelle geschrieben werden. Das kommt später, ich stolpere viel früher schon.
Ich starte mein Programm**, wähle in der Cbb etwas aus, die nachher abgefragt wird, beim disconnecten erfrage ich den Count (rein zum testen, ob sie da was ändert). Nun steht in der Cbb ja was und der items.count müsste doch reintheoretisch 1 sein und nicht 0 oder?

Ich habe die If umgebaut und auf 0 gefragt, dann zeigt er mir mein ShowMessage und um ganz sicher zu gehen habe ich meine ShowMessage auch nochmal verändert:

ShowMessage(IntToStr(LookUpCbb1.Properties.Items.Count)); // <--- er zeigt 0 an, trotz das etwas ausgewählt ist.

**Ich habe einen Connect- und DisconnectButton, den ich nach dem Start des Programms natürlich verwende.

Vermutlich ist das so ne Wald-Baum Sache...

LG Lizzy
Lizzy
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#2

AW: LookUpCombobox.Properties.items.count bleibt 0

  Alt 10. Nov 2016, 11:00
Zitat:
<--- er zeigt 0 an, trotz das etwas ausgewählt ist.
Blick da nicht ganz durch was du willst aber was hat der Items.Count mit select(ausgewählt) zu tun?

gruss
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.153 Beiträge
 
Delphi 12 Athens
 
#3

AW: LookUpCombobox.Properties.items.count bleibt 0

  Alt 10. Nov 2016, 11:01
Die LookupSource ist aber auch aktiv und die KeyFields stimmen ebenfalls?

Und nein, es kommt drauf an, wie die Combobox eingestellt ist.
siehe die "normale" Combobox ... je nach Style (z.B. csDropDown oder csDropDownList) kann im Edit auch irgendwas drin stehen, egal, ob es Items gibt oder nicht.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (10. Nov 2016 um 11:04 Uhr)
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#4

AW: LookUpCombobox.Properties.items.count bleibt 0

  Alt 10. Nov 2016, 11:13
Ich hab' da ein Verständnisproblem:

Die LookUpComboBox zeigt Dir den (ausgewählten) Inhalt einer offenen Tabelle an. Diese Anzeige / der Inhalt der LookUpComboBox verschwindet wieder, wenn die Datenbankverbindung beendet wird (zumindest verstehe ich das unter Disconnet).
Lediglich der Inhalt der Eigenschaft Text kann bei diesem Vorgehen vorhandenbleiben. Das sieht dann so aus, als wäre noch was in der LookUpComboBox. Die Items sind zu diesem Zeitpunkt aber wieder leer und damit ist auch Count = 0.
Mir erscheint das Verhalten der LookUpComboBox korrekt, wenn es auch nicht das von Dir gewünschte Verhalten ist.

Eine LookUpComboBox kann man nur bei bestehender Datenbankverbindung und aktiver Tabelle sinnvoll nutzen.
  Mit Zitat antworten Zitat
Khanysha

Registriert seit: 11. Jun 2015
Ort: Dunkeldeutschland
23 Beiträge
 
Delphi 7 Professional
 
#5

AW: LookUpCombobox.Properties.items.count bleibt 0

  Alt 10. Nov 2016, 12:20
Zitat:
<--- er zeigt 0 an, trotz das etwas ausgewählt ist.
Blick da nicht ganz durch was du willst aber was hat der Items.Count mit select(ausgewählt) zu tun?

gruss
In meinem Test möchte ich das Item was zu sehen ist greifen, damit ich es nachher so verbauen kann, dass wenn die Verbindung beendet wird, die Daten in die Datenbank geschrieben werden. Ich will nicht bei jeder Cbb im OnExit sagen: Schreib das in die DB. Darum hab ich diesen Test grade am DisconnectButton. Bevor er alles dicht machen soll er schauen ob was in der Cbb steht. (Der Teil kommt später dazu: Wenn was drin steht, in die DB schreiben und dann alles kappen.)


Die LookupSource ist aber auch aktiv und die KeyFields stimmen ebenfalls?
Ja, aktiv und stimmen.

Ich hab' da ein Verständnisproblem:

Die LookUpComboBox zeigt Dir den (ausgewählten) Inhalt einer offenen Tabelle an. Diese Anzeige / der Inhalt der LookUpComboBox verschwindet wieder, wenn die Datenbankverbindung beendet wird (zumindest verstehe ich das unter Disconnet).
Lediglich der Inhalt der Eigenschaft Text kann bei diesem Vorgehen vorhandenbleiben. Das sieht dann so aus, als wäre noch was in der LookUpComboBox. Die Items sind zu diesem Zeitpunkt aber wieder leer und damit ist auch Count = 0.
Mir erscheint das Verhalten der LookUpComboBox korrekt, wenn es auch nicht das von Dir gewünschte Verhalten ist.

Eine LookUpComboBox kann man nur bei bestehender Datenbankverbindung und aktiver Tabelle sinnvoll nutzen.
Ja, beim Disconnect werden die Querys geschlossen und die Verbindung zur Datenbank beendet.

Es geht auf kurz oder lang darum das die Daten die eingetragen worden sind, als Ganzes in die 4 Tabelle eingetragen werden um sie nochmal drucken zu können, aber nicht mehr zu verändern. Um sie aufrufen zu können muss ich ja die eingetragenen Daten erstmal in die DB schreiben, deswegen versuche in den Wert in der Cbb einzufangen. Nun dachte ich, dass sich Item.Count verändert wenn ich etwas ausgewählt habe.
Lizzy
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.153 Beiträge
 
Delphi 12 Athens
 
#6

AW: LookUpCombobox.Properties.items.count bleibt 0

  Alt 10. Nov 2016, 12:38
Count/ItemCount, Selected/SelectedCount und Focused sind bissl was Unterschiedliches. (betrifft nicht nur die ComboBox)

ItemCount ist die Anzahl der Items im "DropDown" der ComboBox,
das hat aber nichts damit zu tun, ob aktuell Text in der ComboBox steht, oder ob eines der Items ausgewählt (Selected) ist.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Khanysha

Registriert seit: 11. Jun 2015
Ort: Dunkeldeutschland
23 Beiträge
 
Delphi 7 Professional
 
#7

AW: LookUpCombobox.Properties.items.count bleibt 0

  Alt 10. Nov 2016, 13:00
Count/ItemCount, Selected/SelectedCount und Focused sind bissl was Unterschiedliches. (betrifft nicht nur die ComboBox)

ItemCount ist die Anzahl der Items im "DropDown" der ComboBox,
das hat aber nichts damit zu tun, ob aktuell Text in der ComboBox steht, oder ob eines der Items ausgewählt (Selected) ist.
Danke, dann muss ich das wohl anders angehen, aber nun weiß ich das Items.Count nicht das ist was ich dachte
Lizzy
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz