![]() |
10x das gleiche -Wie löst man das am besten?
Moin,
ich habe (bzw werde haben) auf einem Form 10x folgendes: ein TBevel auf dem ein TImage, darunter zwei Button und drüber Label. Der eine Button öffnet einen Dateidialog und fügt den Dateinamen in eine Daba. Der zweite Button löscht den Daba-Eintrag. Im TImage wird das Bild angezeigt, dessen Pfad in der Daba steht. Bei einen Klick auf das Timage wird ein Form als Volbild aufgerufen. Einmal klappt alles schon, aber bevor ich jetzt 10x das gleiche plaziere und 10x die gleichen Ereignisroutinen habe, frage ich doch mal lieber, wie man das vereinfachen kann. Kann man? MfG Heiko |
Re: 10x das gleiche -Wie löst man das am besten?
Wie wäre es mit Frames? ;-)
Also unter Datei --> Neu einen TFrame erstellen, entsprechend einrichten und dann einfach das ganze mehrfach aufs Formular legen (der erste Eintrag in der Komponentenpalette). |
Re: 10x das gleiche -Wie löst man das am besten?
Du kannst dein Formular auch dynamisch im Code erstellen.
|
Re: 10x das gleiche -Wie löst man das am besten?
Das kann man ja dann mit den Frames machen, wenn man das möchte. Aber die Gruppierung ist mit Frames trotzdem am sinnvollsten. ;-)
|
Re: 10x das gleiche -Wie löst man das am besten?
Moin,
Zitat:
Ich habe jetzt ein Frame erstellt und die benötigten Komponenten darauf plaziert. Soweit kein Problem. Aber, ich kann zwar auch in dem Frame die Behandlungsroutinen für die OnClick-Ereignise plazieren, aber wie bekomme ich das Frame an Position x dazu, das es seine Daten in der Daba unter dem Namen x speichert und das Frame an pos y in der Daba unter dem Namen y. Wenn ich mehrmal das Frame "Eingabe" auf einem Formular plaziere, dann haben alle die gleiche OnClick-Routine. Wie ermittel ich, ob der Button 1 in Frame 1 oder in Frame 2 betätigt wurde und wie schreibe ich Informationen in Frame 1 und andere in Frame 2? MfG Heiko |
Re: 10x das gleiche -Wie löst man das am besten?
Ich würde dem Frame ein eigenes Ereignis spendieren. Darin bekommst du dann den Frame übergeben und kannst schauen, welcher es ist. Entweder über die Tag-Eigenschaft oder eine eigene (neue) Eigenschaft des Frames.
|
Re: 10x das gleiche -Wie löst man das am besten?
Moin,
Zitat:
(Außerdem bin ich zu bequem, mir das mit den Koordinaten ermitteln anzutun) MfG Heiko |
Re: 10x das gleiche -Wie löst man das am besten?
Wenn du Frames nutzt, dann sind das ja nur die y-Koordinaten, die du berechnen musst, da ist ja keine aufwendige Berechnung nötig. ;-)
Aber das lohnt sich natürlich nur, wenn eine variable Anzahl von Komponenten da sein sollten (auch zum Scrollen oder so), was hier ja wohl nicht der Fall sein soll. |
Re: 10x das gleiche -Wie löst man das am besten?
Moin,
Zitat:
Wobei 10 dann eine dumme Anzahl ist. Zitat:
Sendet das Frame in dem ich auf einen Button klicke eigentlich seinen Namen "Framexx" mit? Edit: HAbe mir die Frage grade selber beantwortet. Ein label.caption:=name lieferte die Antwort. Gruss Heiko |
Re: 10x das gleiche -Wie löst man das am besten?
Zitat:
Zitat:
Delphi-Quellcode:
So als Beispiel, wenn man hier z.B. auf einen Label darauf ansprechen will.
((Sender as TButton).Parent as TMyFrame).MyLabel.Caption := 'aaa';
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:22 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