AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Fehlermeldung durch Rave-Komponente: inkompatible Typen
Thema durchsuchen
Ansicht
Themen-Optionen

Fehlermeldung durch Rave-Komponente: inkompatible Typen

Ein Thema von AppleFan · begonnen am 25. Mai 2006 · letzter Beitrag vom 26. Mai 2006
Antwort Antwort
Benutzerbild von AppleFan
AppleFan

Registriert seit: 15. Jan 2005
41 Beiträge
 
Delphi 2005 Professional
 
#1

Fehlermeldung durch Rave-Komponente: inkompatible Typen

  Alt 25. Mai 2006, 13:07
Hallo, folgendes Problemchen:
Delphi-Quellcode:
uses ..., Printers, ...
...
if Printer.Orientation = poPortrait then ...
...
soweit alles ok, keine Fehlermeldung, aber mit Rave-Komponente (und somit uses rpDefine) auf der Form und unverändertem Code:

Fehler: Inkompatible Typen: TPrinterOrientation und TOrientation

Wie komme ich aus der Nummer raus ? OK, mit Ord(Printer.Orientation) geht es auch, aber irgendwie ist das doch blöde !
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Fehlermeldung durch Rave-Komponente: inkompatible Typen

  Alt 26. Mai 2006, 01:38
Hallo,

ich kenne die Rave-Komponente nicht, vermute aber, daß in der Unit rpDefine eine Konstante mit Namen poPortrait vom Typ TOrientation definiert ist. Der Compiler arbeitet bei der Auflösung von Bezeichnernamen die Uses-Liste von hinten nach vorne ab. In deinem Fall findet er somit die Konstante aus der Rave-Unit, die natürlich nicht kompatibel zur Printer-Eigenschaft Orientation ist.
Es gibt zwei mögliche Lösungen:
  • Führe die Unit Printers in der Uses-Anweisung hinter rpDefine auf. In diesem Fall kann aber an einer anderen Stelle im Programm eine Fehlermeldung erscheinen, wenn eine Konstante aus der Rave-Unit benötigt wird.
  • Gib den vollständigen Namen der Konstante an: Printers.poPortrait.
Den Weg über Ord würde ich nicht einschlagen. Der Compiler wird es vielleicht übersetzen, allerdings wird u. U. nicht der gewünschte Vergleich durchgeführt, weil sich die Ordinalwerte der gleichnamigen Konstanten aus Printers und rpDefine unterscheiden können.

Gruß Hawkeye
  Mit Zitat antworten Zitat
Benutzerbild von AppleFan
AppleFan

Registriert seit: 15. Jan 2005
41 Beiträge
 
Delphi 2005 Professional
 
#3

Re: Fehlermeldung durch Rave-Komponente: inkompatible Typen

  Alt 26. Mai 2006, 11:26
Hallo,

Danke sehr, das war ein guter Hinweis: "vollständiger Name" !
(eigentlich auch logisch, da hätte ich auch selber drauf kommen müssen)
  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 19:51 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