Einzelnen Beitrag anzeigen

Benutzerbild von JanWe
JanWe

Registriert seit: 23. Mär 2015
Ort: NRW
78 Beiträge
 
Delphi 7 Personal
 
#1

Objekte aus eingebundener DLL erzeugen

  Alt 18. Mai 2015, 18:26
Delphi-Version: XE
Hi,

entschuldigt, ich weiß auch nicht, wie ich das besser umschreiben soll.

Ich möchte mit meiner Delphi 5 Objekte wie PENs einbinden/verwenden, was aber wohl erst mit Delphi >=2006 funktioniert.
Das müßte ich dann wohl über eine DLL lösen, oder?
Also in einer DLL "nach außen" erzeugbare Objekte programmieren.

Jetzt hab ich bei uns an der Uni (da ist Delphi XE an den Terminals installiert) versucht, ein Projekt zu schreiben, das mir wenigstens schon mal auf der Form einen PEN erzeugen soll.
Doch schon da scheitert es.

Bei Graphics [bei den Variablen] wird anscheinend der 'Punkt' erwartet aber ';' gefunden.
direkt darunter: => MyPen = ungültige Compileranweisung
" " undeklarierter Bezeichner: PointF
" " undeklarierter Bezeichner: CreateGraphics
bei myPen: // FEHLER: Oprator oder Semikolon fehlt;; Record, object oder Klasse erforderlich

(hab mal die gemeldeten Fehler in die Kommentare geschrieben)
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var g : Graphics; // . erwartet, aber ; gefunden.
myPen : Pen; // MyPen = ungültige Compileranweisung
Punkte : array[0..2] of PointF; // " " undeklarierter Bezeichner: PointF
begin
  g := Self.CreateGraphics; // " " undeklarierter Bezeichner: CreateGraphics

mypen := Pen.create(color.red, 15); // FEHLER: Oprator oder Semikolon fehlt;; Record, object oder Klasse erforderlich

Punkte[0] := PointF.Create(100,50);
Punkte[1] := PointF.Create(300,150);
Punkte[2] := PointF.Create(100,250);

myPen.startCap := LineCap.Round;
myPen.endCap := LineCap.Round;

myPen.linejoin := Linejoin.Round;

g.Drawlines(mPen, punkte);
end;
Der Code stammt aus einem alten Scriptheft, das ich in den CIP-Räumen Bibliothek gefunden habe. (Delphi wird ja nicht mehr unterrichtet, sind ja alle auf JAVA aufgesprungen ...) Allerdings fehlt weitere Erklärung dazu. Anscheinend muß das mal so funktioniert haben.

mhh, was läuft denn da falsch?
und:
Ist das überhaupt der richtige Ansatz - per (dynamischer)DLL?
und das ist das nächste Problem: Wie bekomme ich das dann, wenn/falls es im Formular funktionieren sollte in DLL Code (delphiXE)?
... sodaß ich in meinem Delphi 5 Programm die eingebundene DLL verwenden kann und dann sogar die Pen-Objekte dort in meinem D5 Programm erzeugen, löschen und verändern kann?

Ganz herzlichen Dank schon mal.

Im Anhang mein Versuchsprojekt
im Unterordner DIE_DLL befindet sich der Code für die DLL, die später mal entstehen soll.
Angehängte Dateien
Dateityp: zip DLL_Projekt.zip (169,3 KB, 1x aufgerufen)
Jan

Geändert von JanWe (18. Mai 2015 um 18:30 Uhr)
  Mit Zitat antworten Zitat