Entwickler-Ecke

Datenbanken - DBGrid


zcidq8 - Fr 09.07.04 18:18
Titel: DBGrid
Ich benutze in einer Datenbankanwendung die DBGrid-Komponente zum nzeigen der Daten. Nun möchte ich das der Benutzer auf die oberste Textzeile klicken kann und das dann die Tabelle alphabetisch sortiert wird nach der angeklickten Reihe. Wie bekomme ich das hin?


hansa - Sa 10.07.04 11:06

Indem Du das entsprechende OnClick-Ereignis auswertest. Also das OnClick des Grids z.B. so einstellen, daß die SelectSQL der zugrunde liegenden Datenmenge geändert wird. Und das wiederum im Zusammenhang mit "ORDER BY", "DESC" usw. Da ich aber jetzt nicht weiß, ob Du überhaupt SQL einsetzt, reicht das vorerst.


zcidq8 - Sa 10.07.04 12:40

Hallo Hansa,

ich benutze Paradox, nicht SQL. Geht das dann nicht?


FaTaLGuiLLoTiNe - Sa 10.07.04 13:22

SQL (Structured Query Language) ist eigentlich nicht der Name einer Datenbank, sondern einer Abfrage- / Manipulationssprache für relationale Datenbanken. Und damit kann man auch auf Paradox - Datenbanken zugreifen.


grayfox - Sa 10.07.04 15:34

hallo zcidq8!

Zitat:
ich benutze Paradox, nicht SQL
:twisted:
(sorry, aber das konnte ich mir jetzt unmöglich verkneifen ;) )

du kannst den DBGrid-inhalt auch sortiert anzeigen, wenn mit tables arbeitest.
einfach die spalten, nach denen du die anzeige sortiert haben willst, indizieren
und mit OnClickEvent des DBGrid den indexnamen wechseln

mfg, stefan


UGrohne - So 11.07.04 13:58

Meinst Du die erste Datensatzzeile oder den Titel? Wenn Titel, dann wird das mit OnClick nicht korrekt funktionieren. Es gibt hier schon einige Beiträge zum DBGrid-Ereignis Suche in: Delphi-Forum, Delphi-Library ONTITLECLICK, das Du dafür brauchst.


zcidq8 - So 11.07.04 18:32

Hallo UGrohne,
ich möchte gerne in meinem DBGrid auf die oberste Zeile (Titelleiste) klicken. Danach sollen sich die Daten darunter sortieren. Wie z.B. im Windows Media Player in der Medienbibliothek. Klickt man auf die Titelleiste erscheint ein kleiner Pfeil und die Liste sortiert sich alphabetisch. Klickt man noch mal drauf sortiert sich die Tabelle alphabetisch, aber rückwärts und der Pfeil zeigt nach unten. Genau so würde ich das auch gerne machen.


grayfox - So 11.07.04 19:45

hallo zcidq8!

wenn du aufsteigend und absteigend sortieren willst, dann halte dich an hasa's vorschlag mit SQL und ORDER BY ASC/DESC, das ist dann einfacher als mittels indizes.
wie du allerdings einen sortierpfeil zeichnest, das kann ich dir auch nicht sagen...

mfg, stefan