AGB  ·  Datenschutz  ·  Impressum  







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

Rechteck verschieben

Ein Thema von delphicoder123 · begonnen am 15. Jun 2019 · letzter Beitrag vom 17. Jun 2019
 
EWeiss
(Gast)

n/a Beiträge
 
#10

AW: Rechteck verschieben

  Alt 16. Jun 2019, 22:17
Du musst deine Procedure und oder Function in deine Klasse packen..


Delphi-Quellcode:
  TRechteck = class(TObject)

   private
     z:Integer; // Zustand (0,1)
     x1,x2,y1,y2: Integer;
     clr: TColor;
     cvs: TCanvas; // Zeichenfläche
     procedure rechteckGetroffen(var getroffen: Bool); // <<< Hier gehört die rein!!!
   public
   
   end;
Das ergebniss ist dann

procedure TRechteck.rechteckGetroffen(var getroffen: Bool);

Und nicht...
procedure rechteckGetroffen(var getroffen: Bool);
TIP: Rechte maustaste auf die Class und dann im Menu auf "complete class at Cursor" und da dann dein Zeugs rein!

Damit hast du keinen zugriff auf die Koordinaten die in deiner Klasse definiert sind.
Zitat:
Trotzdem werden die Variablen x1,x2,y1 und y2 nicht erkannt
Du kannst nicht auf eine private Eigenschaft von TRechteck zugreifen wenn du kein Member von TRechteck bist.
Das bist du erst dann wenn du deine Procedure dort einlagerst.

Delphi-Quellcode:
procedure rechteckGetroffen(var getroffen: Bool);
 begin
   if (Mouse.CursorPos.X > x1) AND (Mouse.CursorPos.X < x2) AND
       (Mouse.CursorPos.Y > y1) AND (Mouse.CursorPos.Y < y2) then
       result:=true
     else
       getroffen:=false;

 end;
Das ist auch falsch wenn schon dann beide Rückgaben "getroffen" nicht einmal Result und einmal getroffen
Verwende bitte in Zukunft die Delphi Tags im Forum Editor das ist das Icon mit dem Delphi Symbol nicht das Code(C++) Symbol.

gruss

Geändert von EWeiss ( 9. Jul 2019 um 08:31 Uhr)
  Mit Zitat antworten Zitat
 


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 21:07 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