![]() |
TUpDown
hallo
ich schreibe gerade ein programm womit ich unter anderem zwischen verschiedenen datensätzen wechseln will. dazu wollte ich die TUpDown-funktion verwenden. wenn ich nun aber auf die komponente klicke um die prozedur zu schreiben unterscheidet er nicht zwischen vorwärts und rückwärts. wie kann ich da differenzieren? also bei klick auf -> soll er einen datensatz weiter gehen und bei <- einen rückwärts. danke im voraus |
AW: TUpDown
Diese Komponente ist nicht für diesen Zweck gedacht, man könnte hier ja fast schon von Komponentenmißbrauch schreiben :stupid:
Normalerweise nimmt man dazu den Datenbank-Navigator, der hat bereits die entsprechenden Schaltflächen und noch einige mehr. Alternativ nimmst du einfach zwei Buttons, einen nennst du z.B. Button_Prior und den anderen Button_Next. In den Ereignisbehandlungen schreibst du einfach: MeinDataset.Prior bzw. MeinDataset.Next. |
AW: TUpDown
Im OnClick kannst Du doch den Button auswerten, entweder btNext oder btPrev.
P.S.: Willkommen in der DP :dp: |
AW: TUpDown
Was spricht gegen einen DbNavigator, der eben nur diese beiden Buttons erlaubt bekommt?
|
AW: TUpDown
es mag sein dass es bessere alternativen gibt die evenuell einfacher sind aber unser lehrer hat uns da strikte anweisungen gegeben, da es mehr um das lernen gehen soll als um schlichtheit. ich habe es mit BtNext und BtPrev probiert bloß für er bei OnClick nur eine der beiden sachen aus. das heisst ich habe es soweit geschrieben das er bei BtNext den nächsten datensatz anzeigt. nur ist das auch der fall wenn ich auf den anderen pfeil klicke. und das will ich eben differenzieren dass er bei dem klick auf einen pfeil einen datensatz weitergeht und bei einem klick auf den anderen pfeil den vorherigen datensatz anzeigt.
P.S.: danke ;) |
AW: TUpDown
Natürlich wird beim OnClick nur eine Methode aufgerufen, egal was man klickt.
Darum sollst du ja auch schauen was im Parameter "Button" drinsteht. :zwinker: |
AW: TUpDown
also ich habe in der kopfzeile der prozedur zu stehen:
procedure TFormDVD.UpDown1Click(Sender: TObject; Button: TUDBtnType); wobei TUDBtnType = (btNext, btPrev); ich glaub ich stell mich da etwas doof an -.- wie gebe ich jetzt genaue befehle wann er was tun soll bei welchem button? |
AW: TUpDown
Z.B. mit if-Anweisung:
Delphi-Quellcode:
oder mit Case
if Button = btNext then
begin // Code für btNext end else begin // Code für btPrev end;
Code:
case Button of
btNext: begin // Code für btNext end; btPrev: begin // Code für btPrev end; end; |
AW: TUpDown
dankeschön an euch! es klappt :)
ich hab das mit case genommen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz