Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Fehlersuche Programm


chickenfigt1989 - Sa 09.07.11 21:54
Titel: Fehlersuche Programm
Hallo
Wollt ein kleines Programm machen wo zwei bilder drauf sind und in einen bild sind 5 fehler.
Soweit so gut.
Dachte mir ich versteck einfach hinter jeden fehler ein kleines Panel das unsichtbar ist, und wen man auf den fehler klickt wird das onklick ereignis von panel ausgelöst das ein weiteres image das rote kreuz zum fehler markieren erscheint.
Nur klappt das nciht so
wie mach ich das am besten?
lg


Marc. - Sa 09.07.11 22:00

Wofür der Workaround mit Panels? Du kennst doch bereits die Koordinaten und kannst diese mit der Position der Maus beim OnClick vergleichen, wobei ein gewisser Toleranzwert zulässig sein sollte. ;)
Deine Fehler sind dann beispielsweise entsprechende Objekte mit den Eigenschaften "Position" und "Found".


chickenfigt1989 - Sa 09.07.11 22:32

hmm hört sich logisch an aber wie komm ich an die koordinaten :)


Gausi - Sa 09.07.11 22:38

Nimm das OnMouseDown-Event anstelle von OnClick. Da bekommt man die Koordinaten als Parameter mitgeliefert. ;-)


chickenfigt1989 - Sa 09.07.11 22:57

Ja aber wie und wo soll ich des jetzt machen?
steh grad voll aufm schlauch


chickenfigt1989 - Sa 09.07.11 23:23

Hier mit dem kann ich die koordinaten des Bildes auslesen
Caption := Format('X %d Y %d', [X, Y]);
aber wie vergleich ich das nun?


glotzer - Sa 09.07.11 23:26

trololol...

zum ich x-ten mal... [http://www.delphi-treff.de/tutorials/grundlagen/]


chickenfigt1989 - Sa 09.07.11 23:43

wie kann ich das onklick ereignis bei einer bestimmten koordinate auslösen?


FinnO - Sa 09.07.11 23:47

via mausklick.


chickenfigt1989 - Sa 09.07.11 23:50

Habt ihr vllt für mich nen beispielcode?


BenBE - Sa 09.07.11 23:52


Delphi-Quelltext
1:
2:
3:
4:
Procedure TGuttenbergForm.CopiedCodeMouseUp(Sender: TObject; X,Y: Integer);
begin
    Copy(Code, X, Y);
end;


chickenfigt1989 - Sa 09.07.11 23:59

sehr witzig
kann mir jemand helfen bitte?


BenBE - So 10.07.11 00:03

Was verstehst Du an den Antworten der andern denn nicht?

Und NEIN, es wird hier KEINEN Source geben ;-)


chickenfigt1989 - So 10.07.11 00:22

Ich check einfach nicht wie ich die überprüfung amchen soll also wie soll cih das vergleichen
etwa so
if x:=100 and
y:=100 then
begin
Showmessage('Richtig');
end;

?


Delete - So 10.07.11 00:28

Du hast jetzt verschiedene Möglichkeiten:
* Trotz aller Anstrengungen mal eines dieser Seiten wie Google aufzusuchen oder gar die Foren-Suche zu benutzen.
* In die Delphi-Doku gucken.
* Es sein lassen.


Delete - So 10.07.11 00:30

Warum probierst du es nicht einfach aus? Kleiner Tipp:

Delphi-Quelltext
1:
2:
if (x>90and (x<110then
// Treffer

sonst muss man den Punkt genau treffen und das wäre ziemlich schwer.


Delphi-Laie - So 10.07.11 16:30

user profile iconchickenfigt1989 hat folgendes geschrieben Zum zitierten Posting springen:
Ich check einfach nicht wie ich die überprüfung amchen soll also wie soll cih das vergleichen
etwa so
if x:=100 and
y:=100 then
begin
Showmessage('Richtig');
end;

?


Mir ist völlig schleierhaft, wie jemand, der schon über ein Jahr mit von der Delphipartie ist und zudem nahezu 400 Beiträge hier hineinsetzte, solch brachiale Anfängerfehler begehen kann.