Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Was kann man eigentlich statt TImage verwenden?
Xearox - Mo 25.02.13 21:38
Titel: Was kann man eigentlich statt TImage verwenden?
Folgendes:
Ich habe in diesem Forumsthread bei Delphi Treff
http://forum.delphi-treff.de/showthread.php?8819-Image-OnClick im letzten Beitrag gelesen, das man bei "Spielen" keine TImage verwenden soll. In meinem jetztigen Kenntniss stand, kenne ich aber nur diese Methode. Da ich nun vor dem Problem stehe, bei Dynamisch erstellen TImage Objekten ein OnClick Ereignis hinzu zufügen, ich allerdings keine Ahnung davon habe, wie man das macht, such ich nun Tutorials, welche dies erklären, da bin ich halt auf dem oben genannten Thread gestoßen.
Kann mir hier jemand vllt. sagen, was man da statdessen verwenden kann, also statt TImage?
Liebe Grüße
Moderiert von
Narses: Titel geändert: Tiepvelher korrigiert.
Jon Good - Mo 25.02.13 21:39
Du kannst prinzipiell alles verwenden was einen Canvas hat. Das heißt, du kannst auch direkt auf den Canvas der Form zeichnen, bzw. eine TPaintBox verwenden.
- Jon
Xearox - Mo 25.02.13 21:45
Jon Good hat folgendes geschrieben : |
Du kannst prinzipiell alles verwenden was einen Canvas hat. Das heißt, du kannst auch direkt auf den Canvas der Form zeichnen, bzw. eine TPaintBox verwenden.
- Jon |
Kann ich dieses Objekt auch anklickbar machen, sodass ein bestimmtes Event ausgelöst wird?
Ich habe wie gesagt, nur mit festen TImages gearbeitet, bedeutet, ein TImage auf einer Form erstellt.
Und dieses per ObjektInspector ein OnClick Ereignis hinzugefügt.
Nun bin ich den weg gegangen, diese Objekte dynamisch zu erzeugen, damit ich nicht die ganze form mit TImages zu kleistern muss. So kann ich nun in einem Array bzw. TList den erstellten Bildern, eigenschaften hinzufügen.
bummi - Mo 25.02.13 22:23
Form oder Paintbox sind anklickbar. Im Mousedown, Mousemove etc. kannst Du auswerten welches deiner im OnPaint gezeichneten Objekte überfahren oder angeklickt wurden.
Mathematiker - Mo 25.02.13 22:25
Hallo,
Xearox hat folgendes geschrieben : |
Kann ich dieses Objekt auch anklickbar machen, sodass ein bestimmtes Event ausgelöst wird? |
Selbstverständlich. Wie jede "richtige" Komponente besitzt TPaintbox die Ereignisse OnClick, OnMousedown, usw.
Ein wichtiger Unterschied zu TImage ist, dass das Zeichen in der Paintbox durch das OnPaint-Ereignis ausgelöst wird.
Außerdem sollte man möglichst nicht direkt auf die Paintbox zeichnen, sondern mit Hilfe eines Speicherbitmaps.
Beispiele findest Du in der EE sehr viele; natürlich auch ein paar von mir :lol: , z.B. unter
Addiator
http://www.entwickler-ecke.de/viewtopic.php?t=110396 oder Vexed-Puzzle
http://www.entwickler-ecke.de/viewtopic.php?t=110657
Beste Grüße
Mathematiker
Schade: Bummi war schneller. :D
Xearox - Mi 27.02.13 06:32
Huhu,
ich werde mir das alles mal in Ruhe anschauen, und ggf. die Sachen dafür ausdrucken und lernen :D
Ich bin gerade mal meine alten Themen durch gegangen und stand vor 3 Jahren schonmal vor solch ein Problem und man hatte mir damals schon das mit der PaintBox empfohlen, allerdings ist mir da damals die lust entflogen, mich weiter damit auseinander zu setzen.
Werde daher das Thema hier auf erledigt stellen, da meine Frage beantwortet wurde =)
Vielen Dank
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!