AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Delphi XE2 Canvas Fehler, die keine sind
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi XE2 Canvas Fehler, die keine sind

Ein Thema von me123 · begonnen am 6. Mär 2012 · letzter Beitrag vom 6. Mär 2012
Antwort Antwort
Seite 1 von 2  1 2      
me123

Registriert seit: 6. Mär 2012
5 Beiträge
 
#1

Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:15
Moin,
ich habe ein merkwürdiges Problem mit Delphi XE2.

Für eine Seminaraufgabe muss ich ein einwandfrei kompilierbares (also ohne Fehler oder Warnungen) Projekt abgeben. Im Projekt muss ich Canvas verwenden, um Rechtecke und Kreise zu zeichnen. Ich habe also einfach eine neue VCL-Anwendung erstellt und ohne irgendetwas manuell einzubinden Code wie den folgendenen zusammengeschrieben: FMain.Canvas.Ellipse(10,10,20,20); Das Projekt beeinhaltet also nur die Units Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls;

Das Problem ist nun, dass sich das Projekt kompilieren lässt und auch einwandfrei funktioniert, aber: An jeder Stelle im Code, wo ich *.Canvas. verwende, taucht der Fehler "Undeklarierter Bezeichner 'Ellipse' in Zeile..." auf. Ellipse ist durch den jeweiligen Bezeichner nach "Canvas." zu ersetzen.

Mein gesamtes Projekt besteht nun schon aus 11 "Undeklarierter Bezeichner"-Fehlern, obwohl ich nur einen Kreis in der Form mit den Pfeiltasten verschieben kann. Warum taucht der Fehler immer wieder auf, obwohl es eigentlich gar kein Fehler ist? Habe ich irgendetwas vergessen oder übersehen?

Gruß
me123
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#2

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:20
Zeig doch mal den Originalcode.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
me123

Registriert seit: 6. Mär 2012
5 Beiträge
 
#3

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:24
Delphi-Quellcode:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls;

type
  TForm1 = class(TForm)
    procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
    procedure FormPaint(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  FMain: TForm1;
  x,y,big:word;

implementation
{$R *.dfm}

procedure clearCanvas();
begin
  FMain.Canvas.Brush.Color := clBtnFace;
  FMain.Canvas.FillRect(FMain.Canvas.ClipRect);
end;

procedure enter();
begin
  clearCanvas();
  if big >= 5 then
  begin
    big := big - 5;
    FMain.Canvas.Ellipse(x,y,big+x,big+y);
  end;
end;

procedure leer();
begin
  clearCanvas();
  big := big + 5;
  FMain.Canvas.Ellipse(x,y,big+x,big+y);
end;

procedure links(var x:word);
begin
  clearCanvas();
  dec(x);
  FMain.Canvas.Ellipse(x,y,big+x,big+y);
end;

procedure hoch(var y:word);
begin
  clearCanvas();
  dec(y);
  FMain.Canvas.Ellipse(x,y,big+x,big+y);
end;

procedure rechts(var x:word);
begin
  clearCanvas();
  inc(x);
  FMain.Canvas.Ellipse(x,y,big+x,big+y);
end;

procedure runter(var y:word);
begin
  clearCanvas();
  inc(y);
  FMain.Canvas.Ellipse(x,y,big+x,big+y);
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if (x > 0) AND (y > 0) then
  begin
    case Key of
    13: enter();
    32: leer();
    37: links(x);
    38: hoch(y);
    39: rechts(x);
    40: runter(y);
    end;
  end
  else
  begin
    if x <= 0 then
      x := 1;
    if y <= 0 then
      y := 1;
  end;
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
  FMain.Canvas.Ellipse(x,y,big+x,big+y);
end;

initialization
x := 200;
y := 200;
big := 20;

end.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:24
Das Problem ist nun, dass sich das Projekt kompilieren lässt und auch einwandfrei funktioniert, aber: An jeder Stelle im Code, wo ich *.Canvas. verwende, taucht der Fehler "Undeklarierter Bezeichner 'Ellipse' in Zeile..." auf.
Irgendwas stimmt an der Aussage nicht. Entweder lässt es sich ohne Fehler kompilieren (exe-datei etc. entsteht) oder der Compiler bringt beim compilieren Fehler wie "Undeklarierter Bezeichner..."
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von FaTaLGuiLLoTiNe
FaTaLGuiLLoTiNe

Registriert seit: 3. Jul 2004
Ort: NRW
55 Beiträge
 
Delphi XE Enterprise
 
#5

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:27
Error Insight eventuell?
Christian
<< FaTaLGuiLLoTiNe >>
Rhinoceroses don't play games!
  Mit Zitat antworten Zitat
DrUArn

Registriert seit: 20. Mär 2003
130 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:33
Hi,

ich kenne dieses Problem auch -
massenweise Fehlerhinweise (rote Wellenlinie), daß diese oder jene Eigenschaft nicht bekannt ist - aber das Programm läßt sich kompilieren und läuft dann auch!
Die Fehler werden im Objektinspektor und im Quellcode angezeigt, stören aber nicht.

Ich denke, daß das irgendwas mit den Pfadeinstellungen zu tun hat -.

Zumindestens nervt das.

Gruß Uwe
  Mit Zitat antworten Zitat
me123

Registriert seit: 6. Mär 2012
5 Beiträge
 
#7

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:34
Irgendwas stimmt an der Aussage nicht. Entweder lässt es sich ohne Fehler kompilieren (exe-datei etc. entsteht) oder der Compiler bringt beim compilieren Fehler wie "Undeklarierter Bezeichner..."
Genau das ist ja das merkwürdige. Beides trifft zu: *.exe etc entsteht UND Fehler tauchen auf (siehe Anhang).
Miniaturansicht angehängter Grafiken
delphi.png  
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#8

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:35
[OT]
diese FMain-Bezüge sind grauslig ....
[/OT]
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
me123

Registriert seit: 6. Mär 2012
5 Beiträge
 
#9

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:47
diese FMain-Bezüge sind grauslig ....
Ich weiß. Sind nur die ersten Tests, damit es schneller geht - habe lange nicht mehr mit Delphi gearbeitet und muss erstmal wieder reinkommen. Wenn später das "richtige" Projekt entsteht, arbeite ich sauberer.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#10

AW: Delphi XE2 Canvas Fehler, die keine sind

  Alt 6. Mär 2012, 13:47
Mach doch aus den regulären Prozeduren besser Methoden von TForm1, dann musst Du auch nicht mehr auf die globale Variable zugreifen. Und diese Wellenlinien kommen von ErrorInsight, das hat noch nie zuverlässig funktioniert. Wenn der Compiler nichts zu meckern hat, ist auch der Code syntaktisch in Ordnung.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19:22 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