Zwei Bilder vergleichen...
-
Ich würde gerne zwei Bilder in einer IF-Anweisung vergleichen und dann eine bestimmte Aktion ausführen. Dazu habe ich mehrere Images mit verschiedenen Pictures.
if (Key == 'd') { if(Image1->Picture==Image6->Picture) { Timer1->Enabled=true; Timer2->Enabled=false; Timer3->Enabled=false; } }
Leider passiert da garnichts - warum auch immer! wenn ich die if-anweisung einfach weg lasse, gehts wunderbar... nur ich brauch eine einschränkende anweisung.
Hat jemand ne idee, was ich da machen könnte. hab schon alles versucht und keine ideen mehr. Bitte um Hilfe, thx!
MfG
MiG
-
Du vergleichst nur, ob die Zeiger übereinstimmen.
Du müsstest dir am besten eine Funktion schreiben, die per TBitmap::ScanLine die Pixel vergleicht.
Edit: *lol*
[ Dieser Beitrag wurde am 22.03.2003 um 18:24 Uhr von Eßer editiert. ]
-
Du vergleichst die ADRESSEN der beiden Picture's !!! - die sind nie gleich.
Wenn Du die Bilder auf Inhalt vergleichen willst, musste mit:
Canvas->Pixels[i][j] auf die bildpunkte
oder mitTImage->Picture->Bitmap->ScanLine[y] auf eine Zeile
zugreifen und die vergleichen!
PS: zu langsam
Schau die mal die BCB- Hilfe dazu an!
[ Dieser Beitrag wurde am 22.03.2003 um 18:23 Uhr von DerAltenburger editiert. ]
-
kann ich nicht auch irgendwie einfach überprüfen ob der pfad von dem picture der selbe ist. also if(Image1->pfad("gerade.bmp") oder sowas in der art. gibt es da vielleicht einen simplen befehl?
-
Neeeeeeeeeee.
in TImage wird der Pfad nicht gespeichert!
Aber Du kannst den machen:
-- Von TImage 'ne Klasse ableiten
-- Ne Public- Variable (Property) fuer den Namen einfuegen
-- Ne Eigene LoadFromFile() schreiben
-- in der wird : Bild geladen mit Original LoadFromFile
-- Der name gespeichert!Voila, dann kannste die Namen vergleichen!
PS: Geht bei mir schon lange so!
-
lol, DARUM versaut es den Stil als Anfänger mit BCB anzufangen... BILD1 == BILD2
-
hee?? naja. danke erstma für die auskunft. weiss nicht wirklich ob mich das weiter gebracht hat!
-
das meine ich ja... ein wenig Theorie und ein gutes Buch würde nicht Schaden bvor du anfängst...
-
...schulprojekt. nix buch, nix geld, kaum bock
du verstehen?
-
-
murph schrieb:
hallo,
@mig: nix geld, nix bock, nix buch == nix programmieren...
mfg
murphUm nicht gleich alle Neulinge abzuschrecken:
nix bock == nix programmieren...
MfG
snwFlake
-
etechniker schrieb:
lol, DARUM versaut es den Stil als Anfänger mit BCB anzufangen... BILD1 == BILD2
Was hat das mit dem BCB zu tun?
Im BCB sieht man eindeutig, dass das "Bild" nur ein Zeiger auf ein Bild ist durch den -> Operator. In Delphi ist das weniger eindeutig.
-
In Delphi ist das genauso eindeutig, weil alle Objektreferenzen Zeiger sind (d.h.
nil
sein können) und deshalb eine Unterscheidung zwischen "->" und "." nicht nötig ist.Außerdem war dieser Thread 12 Jahre lang unberührt, bevor snwFlake meinte, ihn durch einen wichtigen Nachtrag wiederbeleben zu müssen.
-
audacia schrieb:
Außerdem war dieser Thread 12 Jahre lang unberührt, bevor snwFlake meinte, ihn durch einen wichtigen Nachtrag wiederbeleben zu müssen.
Für gewöhnlich suche ich nicht erst nach dem Datum wenn ein Thread ganz oben als unread auftaucht....!