Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Anzeige und Auswahl von Einträgen in einer DB (https://www.delphipraxis.net/104225-anzeige-und-auswahl-von-eintraegen-einer-db.html)

KPBecker 29. Nov 2007 16:07

Datenbank: Access, MS-SQL • Zugriff über: ADO

Anzeige und Auswahl von Einträgen in einer DB
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo, Delphi-Praktiker,

Gegeben:
Tabelle in einer DB

Gewünscht:
- Die in einer Spalte enthaltenen Einträge sollen in einer Liste aufklappen (wie das mit DBGrid ja auch für mehrere Spalten geht).
- In dieser Liste sollen ein oder mehrere Einträge ausgewählt (markiert) werden können (z.B. durch kleine Check-Boxen vor jedem Eintrag)
- Die ausgewählten Items sollen in irgendeiner Weise zugreifbar sein (z.B. Liste mit den Nummern der ausgewählten Einträge).

Gibt es dafür ein geeignetes Element in der Standard-Delphi-Umgebung (Delphi 2007 für Win32)?
Ein Beispiel, das zeigt wie ich mir das vorstelle, ist als Anhang beigefügt.

Beste Grüße
K.-P. Becker

Jetzt vielleicht auch mit Anhang ...

shmia 29. Nov 2007 16:19

Re: Anzeige und Auswahl von Einträgen in einer DB
 
Wozu brauchst du das ?
Willst du eine N:M Verknüpfung erreichen?
Beispiel:
Ein Buch kann mehrere Authoren haben. Ein Author kann 1 oder mehrere Bücher geschrieben haben:
http://www.favore.net/cms/media/favore_orm/m_n.gif

KPBecker 29. Nov 2007 16:23

Re: Anzeige und Auswahl von Einträgen in einer DB
 
Viel einfacher:
Ich möchte aus einer in Form einer DB-Tabelle vorgegebenen Liste einfach mehrere Einträge auswählen können.
Abhängig von dieser Auswahl läuft das Programm dann weiter.

KPB

shmia 29. Nov 2007 16:29

Re: Anzeige und Auswahl von Einträgen in einer DB
 
Zitat:

Zitat von KPBecker
Ich möchte aus einer in Form einer DB-Tabelle vorgegebenen Liste einfach mehrere Einträge auswählen können.

Ach so.
Du möchtest also ein DBGrid anzeigen und der Benutzer darf 1, 2 oder beliebig viele Datensätze markieren.
Anschliesend kann dein Program diese Datensätze anspringen und irgendetwas damit tun. (z.B. Löschen, Exportieren, Drucken, ...)

Damit das geht, muss dgMultiSelect in [TDBGrid].Options gesetzt werden.
Danach kannst du über das Property SelectedRows die merkierten Datensätze ermitteln.

KPBecker 29. Nov 2007 16:38

Re: Anzeige und Auswahl von Einträgen in einer DB
 
Danke,
das wäre eine Lösung.

Gibt es auch etwas, das ähnlich wie eine Listbox aufzuklappen ist, sich aus einer Tabelle füllt und die Auswahl einzelner Einträge gestattet ?

Alternativ: Wie oben, ... und die Auswahl eines Eintrags gestattet, der dann in der Box angezeigt wird.
(Ginge das sinnvoll mit einer Combobox, die anhand der Tabelle zunächst per Programm gefüllt wird ?)


KPB

marabu 29. Nov 2007 18:21

Re: Anzeige und Auswahl von Einträgen in einer DB
 
Hallo KP,

wenn dir das DBGrid und seine Visualisierung nicht gefallen, dann kannst du mit wenig Code auch eine TCheckListBox verwenden. Ich würde dort einen aussagefähigen String anzeigen und zusätzlich den primary key (AddObject) vermerken.

Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:33 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