Autor Beitrag
HotLaps
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Do 23.01.03 11:14 
Hallo!

Ich würde gerne in ein DBCtrlGrid eine DBLookupComboBox und einen DateTimePicker geben, aber unter Delphi7 geht das ja leider nicht nicht.

Weiß jemand eine andere Lösung dafür oder einen Workaround?

Danke!
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Do 23.01.03 12:24 
Hi,

daß das nicht geht, da wäre ich mir aber nicht ganz sicher! Suche mal in der OH nach dem hier, da steht nämlich noch wesentlich mehr. Auszug :

Delphi OH hat folgendes geschrieben:

Sie können eine Spalte definieren, die ähnlich wie ein Lookup-Kombinationsfeld eine Dropdown-Liste mit Werten anzeigt. Damit sich eine Spalte wie ein Kombinationsfeld verhält, müssen Sie der Eigenschaft ButtonStyle der Spalte den Wert cbsAuto zuweisen. Nachdem Sie Werte für die Dropdown-Liste definiert haben, zeigt das Gitter automatisch eine Dropdown-Schaltfläche im Kombinationsfeldstil an, wenn sich eine Zelle der betreffenden Spalte im Bearbeitungsmodus befindet.

Zur Definition der Listeneinträge, aus denen der Benutzer Werte auswählt, stehen zwei Verfahren zur Auswahl:

Die Werte können aus einer Lookup-Tabelle abgerufen werden. Damit eine Spalte eine Dropdown-Liste mit Werten aus einer separaten Lookup-Tabelle anzeigt, müssen Sie ein Lookup-Feld in der Datenmenge definieren. Weitere Informationen zum Erstellen von Lookup-Feldern finden Sie unter Lookup-Felder definieren. Nachdem das Lookup-Feld definiert wurde, weisen Sie der Eigenschaft FieldName den Namen des Lookup-Feldes zu. Die Dropdown-Liste wird automatisch mit den für das Lookup- Feld definierten Werten gefüllt.

Sie können während des Entwurfs eine Liste mit Werten explizit angeben. Zur Eingabe dieser Werteliste doppelklicken Sie im Objektinspektor auf die Eigenschaft PickList der betreffenden Spalte. Daraufhin wird der Stringlisten-Editor geöffnet, in dem Sie die Werte eingeben können, die in der Auswahlliste angezeigt werden sollen.

Die Dropdown-Liste zeigt per Voreinstellung immer 7 Werte an. Sie können die Länge der Liste mit der Eigenschaft DropDownRows ändern.

Hinweis: Um die Standardfunktion einer Spalte wiederherzustellen, löschen Sie im Stringlisten-Editor den Text aus der Auswahlliste.


Gruß
Hansa
HotLaps Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Do 23.01.03 13:55 
Danke für die Mühe!

So wie ich das verstehe kann man damit folgendes Szenario darstellen:

Ich gebe eine Postleitzahl ein und bekomme den dazugehörigen Ort zurück.

Ich würde aber das brauchen:

Ich möchte ein neues Mitglied in einer Arbeitsgruppe hinzufügen, sprich einen neuen Datensatz anlegen, dazu hätte ich gern die Liste aller verfügbaren Arbeitsgruppen
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Do 23.01.03 14:10 
Hi,

HotLaps hat folgendes geschrieben:
Danke für die Mühe!


nichts zu danken, bin an was ähnlichen dran. :lol:

Zitat:
Nachdem Sie Werte für die Dropdown-Liste definiert haben, zeigt das Gitter automatisch eine Dropdown-Schaltfläche im Kombinationsfeldstil an, wenn sich eine Zelle der betreffenden Spalte im Bearbeitungsmodus befindet.


Für mich ist das da aber ziemlich eindeutig : Du Clicks eine Spalte an und kriegst eine Dropdownbox ! :?!?: Also legst Du das Mitglied an, clickst die Zelle in Spalte Arbeitsgruppe und der Zeile des Mitglieds an und wählst die entsprechende aus :!: Fast dasselbe mache ich, nur das bei mir beim Betreten eines Editfeldes die Box aufgehen soll. Das scheint Gott sei Dank etwas einfacher zu sein, denn es funktioniert, bis auf zwei Kleinigkeiten. :mrgreen:

Gruß
hansa
neojones
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1206
Erhaltene Danke: 1



BeitragVerfasst: Do 23.01.03 14:34 
Problem:

Man hat zwei Tabellen. Eine, die Kontrollwerte enthält, z.B. Abteilung:

abt_nr integer
abt_name char

Eine weitere tabelle enthält z.B. alle Mitarbeiter und für die Abteilung ein Integer-Feld, das den entsprechenden Datensatz in der Kontrolltabelle refernziert:

ma_nr integer
abt_nr integer
ma_name char

Will man jetzt den Namen der Abteilung anzeigen, aber die Nummer speichern, benutzt man typischerweise eine DBLookUpComboBox-Komponente. ABER: Die funktioniert nicht im DBControlGrid. Ich suche im auch Moment eine Lösung für genau dieses Problem. Wer was weiß: Her damit!

Viele Grüße,

Matthias

_________________
Ha! Es compiliert! Wir können ausliefern!
HotLaps Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Do 23.01.03 16:01 
Hallo neojones!

Schön das es noch jemanden anderen gibt, der auch so ein Problem hat. Ich dachte schon ich wäre die einzige, die eigentlich so etwas simples braucht.

Ich möchte einfach nur eine Liste bekommen, die von einer anderen Tabelle kommt und das ganze in einem DBCtrlGrid