Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Bei Klick auf Feld etwas aktivieren (https://www.delphipraxis.net/171766-bei-klick-auf-feld-etwas-aktivieren.html)

CrashingToad 23. Nov 2012 17:45

Bei Klick auf Feld etwas aktivieren
 
Hallo,
ich würde gerne, durch ein 1-fache Klicken auf ein Edit Feld ein Bild erscheinen lassen. Ist dies möglich und wen ja wie?
Ich suche nur den Prozedur-Namen, den Rest würde ich warscheinlich auch alleine hinbekommen.



Danke im vorraus für antworten
MfG
Toad

himitsu 23. Nov 2012 17:53

AW: Bei Klick auf Feld etwas aktivieren
 
Da fehlen noch ein paar wichtige Infos:

Wo soll denn das Bild erscheinen?

Von wo soll es kommen?

Und wogenau liegt nun dein Problem?
- Bild erscheinen (z.B. Picture.LoadFromFile beim TImage)
- auf Klick reagieren (z.B. OnClick im TEdit)

Zitat:

Ich suche nur den Prozedur-Namen
Den Namen von etwas suchen, wo wir nicht wissen was du meinst und dir daher auch nichts sagen können. :angle2:

CrashingToad 23. Nov 2012 17:56

AW: Bei Klick auf Feld etwas aktivieren
 
Das Bild soll in einer Image Box erscheinen. Es liegt bereits im Programm Ordner. Picture.LoadFromFile habe ich schon gefunden und es klappt auch. Allerdings nur, wenn ich in die Box reingehe und etwas schreibe. Ich möchte, dass wenn man in die Edit-Box klickt oder auch(wenn das möglich ist) einfach nur mit dem Cursor über der Edit-Box ist, das Bild gezeigt wird.

Das ganze ist ein Programm zur berechnung von Volumen und Oberfläche von Figuren und ich möchte zur Verständlichkeit immer das entsprechende Glied durch verschiedene Bilder hervorheben.

himitsu 23. Nov 2012 18:01

AW: Bei Klick auf Feld etwas aktivieren
 
Tipp:
Das Edit hat ganz viele Ereignisse ... da braucht man sich nur das rauszusuchen, welches man haben möchte.
(die klingen oftmals sogar nach dem was sie tun :stupid:)

TEdit:
OnEnter = Der Eingabefokus ist grade beim Edit gelandet
OnChange = Text wurde grade veränder (jemand schreibt etwas rein)
OnMouseMove = Maus wurde wegegt
OnClick = es wurde reingeklickt
...

Sir Rufo 23. Nov 2012 18:05

AW: Bei Klick auf Feld etwas aktivieren
 
Zitat:

Zitat von himitsu (Beitrag 1192671)
Tipp:
Das Edit hat ganz viele Ereignisse ... da braucht man sich nur das rauszusuchen, welches man haben möchte.
(die klingen oftmals sogar nach dem was sie tun :stupid:)

TEdit:
OnEnter = Der Eingabefokus ist grade beim Edit gelandet
OnChange = Text wurde grade veränder (jemand schreibt etwas rein)
OnMouseMove = Maus wurde wegegt
OnClick = es wurde reingeklickt
...

Ich gläube bei Delphi 6 gab es am TEDit noch kein OnEnter ...

CrashingToad 23. Nov 2012 18:09

AW: Bei Klick auf Feld etwas aktivieren
 
Okay, vielen Dank schonmal für die Hilfe :-D Das habe ich gesucht.

Allerdings funktionieren diese Aktionen bei mir nicht. Entweder, die gibts in meiner Version noch nicht, oder ich stelle mich zu blöd an..^^

procedure TForm1.Edit3OnEnter(Sender: TObject);

Wäre das so korrekt?

stahli 23. Nov 2012 18:12

AW: Bei Klick auf Feld etwas aktivieren
 
Genau dort.
Probiere es doch einfach aus..

Man kann auch einfach mal einen Beep; ausführen lassen und hört dann, ob die Stelle aufgerufen wird.

Bummi 23. Nov 2012 18:13

AW: Bei Klick auf Feld etwas aktivieren
 
darf ich Dir eine Lektüre empfehlen? http://www.stelzmann-duesseldorf.de/.../Crashkurs.pdf

danach sind 90% der ersten Probleme erst mal vom Tisch

haentschman 23. Nov 2012 18:14

AW: Bei Klick auf Feld etwas aktivieren
 
Moin... 8-)

wenn du im Objektinspektor einen Doppelklick auf das gewünschte Ereignis machst wird die procedure automatisch angelegt... Einfacher geht´s nimmer. :thumb:

Popov 23. Nov 2012 18:15

AW: Bei Klick auf Feld etwas aktivieren
 
Einfach in Objektinspektor auf OnEdit gehen, dort doppelklicken und schon ist man im richtigen Block.

CrashingToad 23. Nov 2012 18:16

AW: Bei Klick auf Feld etwas aktivieren
 
Undefinierter Bezeichner Edit3OnEnter


Danke für die Empfehlung, werde ich mir direkt mal durchlesen :)

himitsu 23. Nov 2012 18:18

AW: Bei Klick auf Feld etwas aktivieren
 
Zitat:

Zitat von haentschman (Beitrag 1192679)
Moin... 8-)

wenn du im Objektinspektor einen Doppelklick auf das gewünschte Ereignis machst wird die procedure automatisch angelegt... Einfacher geht´s nimmer. :thumb:

Und wenn man eine Methode einfach nur in die Klasse schreibt, dann weiß das Edit noch lange nichts davon.
Die Methode muß schließlich noch beim Edit, bzw. beim entsprechenden Ereignis, angemeldet werden.
(was der Doppelklick im OI automatisch macht)

CrashingToad 23. Nov 2012 20:08

AW: Bei Klick auf Feld etwas aktivieren
 
Gibt es eine Liste für Solche möglichekeiten, Edit Aktionen zuzuweisen?

stahli 23. Nov 2012 20:31

AW: Bei Klick auf Feld etwas aktivieren
 
Im Objektinspektor von Register Eigenschaften in Ereignisse wechseln und dort das gewünschte Ereignis doppelklicken.

Ansonsten kommst Du mit F1 in die Hilfe und kannst dort auch nachlesen.

Aphton 23. Nov 2012 21:16

AW: Bei Klick auf Feld etwas aktivieren
 
Möglicherweise musst du die zuvor per Hand angelegte Variante entfernen, da es evt. deswegen zu einem Konflikt kommen könnte - sofern ich mich nicht irre.

CrashingToad 23. Nov 2012 22:58

AW: Bei Klick auf Feld etwas aktivieren
 
Okay, danke für eure Hilfe, mein Programm läuft jetzt einwandfrei :)

Popov 24. Nov 2012 06:00

AW: Bei Klick auf Feld etwas aktivieren
 
Jedes Objekt oder Komponente hat Eigenschaften, Methoden und Ereignisse.

Eigenschaften kann man sich als ein Wert im Objekt vorstellen, z. B. Left, Top, aber auch Color usw. Also wie auch beim Menschen: groß, dich, hübsch, arschloch. Eben Eigenschaften.

Methoden sind Vorgehensweisen wenn eine Aktion durchgeführt werden soll, also Prozeduren oder Funktionen, also Close, Clear, SelectAll. Also eine Aktion.

Ereignisse kommen zum Einsatz wenn etwas passiert. Man gewinnt im Lotto oder ein Button wird mit dem Mauszeiger angeklickt. Oder das Editfeld erhält den Fokus oder verliert ihn, usw. Etwas passiert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:47 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-2025 by Thomas Breitkreuz