AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TImage auf TBevel

Ein Thema von Willie1 · begonnen am 20. Apr 2020 · letzter Beitrag vom 24. Apr 2020
Antwort Antwort
Willie1

Registriert seit: 28. Mai 2008
657 Beiträge
 
Delphi 10.1 Berlin Starter
 
#1

TImage auf TBevel

  Alt 20. Apr 2020, 18:12
Hallo, schon wieder eine Frage von mir.
Auf einem TBevel liegt ein TImage. Dann lässt sich für das Image kein OnClick oder MouseEnter Ereignis auslösen. Ich habe es gerade nochmal ausprobiert. Warum nicht? Was soll ich statt TBevel nehmen? TPanel geht auch nicht.

Willie.
Gut hören kann ich schlecht, schlecht sehen kann ich gut - Ersteres stimmt nicht, das zweite schon.

Geändert von Willie1 (20. Apr 2020 um 18:13 Uhr) Grund: TPanel
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.051 Beiträge
 
Delphi 2009 Professional
 
#2

AW: TImage auf TBevel

  Alt 20. Apr 2020, 18:55
1. Man kann nichts auf TBevel legen, da das kein Erbe von TWinControl ist. Ob man nicht Komponenten einfach übereinander schieben sollte, ist eine andere Frage. Hier muss man die Z-Reihenfolge beachten, was es unintuitiv und fehleranfällig macht.
2. Minimalbeispiel?
Janni
2005 PE, 2009 PA, XE2 PA

Geändert von Redeemer (20. Apr 2020 um 18:57 Uhr)
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
657 Beiträge
 
Delphi 10.1 Berlin Starter
 
#3

AW: TImage auf TBevel

  Alt 21. Apr 2020, 17:22
Hallo,
kleiner Blick in die Geschichte. Ich habe vor 32 Jahren mal das Kniffel-Spiel für den Commodore C64 - Interpreter-Basic geschrieben. lief gut. Den wichtigen Befehl CLS (Clear Screen) kannte der C64 nicht, da musste man einen System-Steuerbefehl benutzen. Ok, Schluss damit.

Jetzt auf meine alten Tage will ich Kniffel nochmal für Windows schreiben und bewusst keine Vorbilder im Web ansehen.
Hier geht es um das Würfeln und Auswählen der Würfel. Siehe Bild. Die 5 Würfel sind auf TImage gemalt - später in 3-D. Das Auswählen eines Würfeln geschieht mit Mausklick. Ich will das mit einem schönen Hintergrund versehen und dazu TBevel ider TPanel verwenden geht aber nicht. Deshalb meine Frage.
Gruß Willie.
Miniaturansicht angehängter Grafiken
screenshot-2020-04-21-16.35.08-1.jpg  
Gut hören kann ich schlecht, schlecht sehen kann ich gut - Ersteres stimmt nicht, das zweite schon.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#4

AW: TImage auf TBevel

  Alt 21. Apr 2020, 17:24
Ich will das mit einem schönen Hintergrund versehen und dazu TBevel ider TPanel verwenden geht aber nicht.
Was genau geht denn nicht?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: TImage auf TBevel

  Alt 21. Apr 2020, 17:28
Du kannst auch einfach auf den Canvas des Formulars zeichnen und die Positionen der Würfel in TRects speichern.

So könntest Du theoretisch sogar Schatten o.ä. unter die Würfel zeichnen, die außerhalb des klickbaren Bereiches liegen.

Als Klickereignis benutzt Du das des Formulars und über die Mausposition ermittelst Du, welcher Würfel gerade geklickt wurde.

Andere Lösungen sind natürlich auch möglich.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
657 Beiträge
 
Delphi 10.1 Berlin Starter
 
#6

AW: TImage auf TBevel

  Alt 21. Apr 2020, 17:31
OnClick geht mit TBevel und TPanel nicht, wenn die Würfel darauf liegen.
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
657 Beiträge
 
Delphi 10.1 Berlin Starter
 
#7

AW: TImage auf TBevel

  Alt 21. Apr 2020, 17:37
Zitat:
Du kannst auch einfach auf den Canvas des Formulars zeichnen und die Positionen der Würfel in TRects speichern.
Bei meinem Konstrukt müssen die Würfel immer wieder neu gezeichnet werden. Ich müsste also 6 Bilder in 2 Farben abspeichern. Richtig?
Gut hören kann ich schlecht, schlecht sehen kann ich gut - Ersteres stimmt nicht, das zweite schon.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#8

AW: TImage auf TBevel

  Alt 21. Apr 2020, 17:40
OnClick geht mit TBevel und TPanel nicht, wenn die Würfel darauf liegen.
Natürlich bekommst du den OnClick-Event des TImage, wenn es auf einem TPanel liegt. Wenn nicht, stimmt etwas mit deinem Form-Aufbau nicht.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: TImage auf TBevel

  Alt 21. Apr 2020, 18:02
Deine Bilder zeichnen musst Du ja in jedem Fall. Das ist unabhängig, ob in ein TImage oder auf den Canvas.
Dafür kannst Du fertige Bilder vorhalten oder die Zeichenfunktion irgendwie berechnen.

Da müsstest Du Dir die für Dich praktikabelste Art auswählen.


Wenn Du ein TImage auf ein Panel legst, musst Du wohl das OnClick des TImage benutzen und nicht das des Panels.
Vielleicht reicht Dir das ja schon als Problemlösung.

In ein TBevel kannst Du nichts hineinsetzen. Das kann also kein anderes Control aufnehmen.
Wenn Du auf ein TForm ein TBevel setzt und darauf ein TImage, dann liegt das TImage tatsächlich auf dem TForm und überlagert/verdeckt lediglich das TBevel. Wenn Du das TBevel verschiebst, verschiebt sich das Image nicht mit.

In einem TPanel wäre das TImage dagegen eingefügt und würde sich beim Verschieben des Panels mit verschieben.

Ein Bevel ist also sozusagen nur eine Zeichenfläche und ein Panel darüber hinaus auch ein Container.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)

Geändert von stahli (21. Apr 2020 um 18:04 Uhr)
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
657 Beiträge
 
Delphi 10.1 Berlin Starter
 
#10

AW: TImage auf TBevel

  Alt 24. Apr 2020, 18:55
Danke Leute
für eure Tipps, das bringt mich weiter. Alles Gute...
Willie.
Gut hören kann ich schlecht, schlecht sehen kann ich gut - Ersteres stimmt nicht, das zweite schon.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz