AGB  ·  Datenschutz  ·  Impressum  







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

GDI+ Klappt nicht

Ein Thema von delphiRenorm · begonnen am 30. Mär 2010 · letzter Beitrag vom 7. Feb 2012
Antwort Antwort
delphiRenorm

Registriert seit: 30. Mär 2010
18 Beiträge
 
Delphi 2010 Professional
 
#1

GDI+ Klappt nicht

  Alt 30. Mär 2010, 22:51
Hallo zusammen,

ich bin vor kurzem zu delphi übergesprungen und gleich mit der neusten version. habe versucht eine Uhr-Komponente zu schreiben,
was grundsätzlich klappt nur gefällt mir die Graphik noch nicht. Das Thema wurde hier ja bereits besprochen.
ich bin nicht sonderlich fit in graphisches programmierung habe jetz des öfteren gelesen, dass GDI+ gerade meine probleme lösen würde. Ich würde unter anderem gerne kattengeglättete linien benutzen und da stoß ich immer wieder auf GDI+ in den foren. so weit so gut, nu bekomm ich aber folgenden fehler, wenn ich eine der beispielanwendungen ausführen möchte

[DCC Fehler] DirectDraw.pas(358): E2154 Typ 'IDirectDrawSurface' benötigt Finalization - nicht im varianten Record erlaubt

meine uses lautet

uses
Windows,
Messages,
SysUtils,
GDIPAPI,
GDIPOBJ;

ich habs auch schon probiert, die DirectDraw und GDIPUTIL extra einzubetten

uses
Windows,
Messages,
SysUtils,
GDIPAPI,
GDIPOBJ,
GDIPUTIL in '..\..\..\pas\GDIPUTIL.pas',
DirectDraw in '..\..\..\pas\DirectDraw.pas';

schlägt auch fehl. hab nich wirklich nen plan woran das liegt.

ps:
falls jemand ne ausführliche einführung in graphische komponentenentwicklung kennt, gerne her damit.
vielen dank schon mal
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

Re: GDI+ Klappt nicht

  Alt 30. Mär 2010, 22:53
Es liegt nicht wirklich an den Units, die du angibst, sondern es liegt vielmehr ein Fehler in der Datei DirectDraw.pas vor. Man müsste die Stelle anschauen, warum das so ist.

Zudem würde ich erst mal prüfen, ob der Source-Code den du da hast überhaupt für D2010 gedacht ist und damit funktioniert.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
delphiRenorm

Registriert seit: 30. Mär 2010
18 Beiträge
 
Delphi 2010 Professional
 
#3

Re: GDI+ Klappt nicht

  Alt 31. Mär 2010, 17:20
Die Zeile in DirectDraw wo der erste Fehler ausgespuckt wird lautet:

lpDDSZBufferDest : PDirectDrawSurface; // Surface to use as Z buffer for dest

dem folgen dann weitere, die alle mit dem Typ PDirectDrawSurface
zusammenhängen. Außer dem Versionsargument hab ich halt im Moment keine Idee woran das liegen kann, aber
das könnte ja schon die richtige antwort sein.

Gibt es ne andere möglichkeit die grafik in delphi 10 selbst zu gestalten ohne direkt die unschönen kanteneffekte, etc.
mit im boot zu haben. ich würd halt gern einige standard-komponenten graphisch meinen vorstellungen anpassen ohne
das rad neu zu erfinden. die gerade optisch glatt zu kriegen, wird wohl klappen, die ersten versuche zeigen das mal,
aber wollte halt kalender etc. aufpeppen und würd gern schon alphablending, farbverläufe direkt implementieren ohne selbst
ne unit dafür zu schreiben.
Dir erst ma danke für die antwort.
  Mit Zitat antworten Zitat
KrasserChecker

Registriert seit: 21. Jul 2004
120 Beiträge
 
#4

Re: GDI+ Klappt nicht

  Alt 31. Mär 2010, 17:37
Hallo,

schau dir mal das hier an:

Delphi 2009 GDI+ Library

Das ist eine der besten Implementationen der GDI+ API, die mir bis dato in Delphi untergekommen ist. Ich nutze sie selbst in einigen Anwendungen.

Von der Website:
Zitat:
It differs from other Delphi GDI+ libraries in the following ways:

* It is modeled more after the .NET System.Drawing namespace instead of the C++ GDI+ classes. As a result, this library is a bit more high level and easier to use.
* It uses object interfaces for automatic memory management and ease of use. You don't have to keep track of your graphics objects anymore.
* It uses exceptions instead of error codes to handle errors the Delphi way.
* It comes with sample applications that demonstrate the usage of GDI+ through examples from the Windows Platform SDK.
* It supports the GDI+ version 1.1 extensions that were added with Windows Vista and certain Office versions.
* Optionally provides class helpers for interoperability with Delphi's TBitmap and TCanvas.
  Mit Zitat antworten Zitat
delphiRenorm

Registriert seit: 30. Mär 2010
18 Beiträge
 
Delphi 2010 Professional
 
#5

Re: GDI+ Klappt nicht

  Alt 31. Mär 2010, 20:18
Das ist des Rätsels Lösung. Klasse Link und tolle Demos. Sehr zu empfehlen. Danke für den Tipp
  Mit Zitat antworten Zitat
macadamia

Registriert seit: 17. Apr 2008
12 Beiträge
 
Delphi 2007 Professional
 
#6

AW: GDI+ Klappt nicht

  Alt 9. Jul 2010, 10:35
Ansonsten ist der Grund für den ersten Fehler, dass eine Compiler-Konstante "DELPHI5_UP" verwendet wird, die aber nicht definiert ist. Daher wird der Code für älteres Delphi angenommen, was zu dem Fehler führt. Wenn Du die Konstante definierts, geht es.
  Mit Zitat antworten Zitat
iGoA

Registriert seit: 9. Jul 2007
69 Beiträge
 
#7

AW: GDI+ Klappt nicht

  Alt 7. Apr 2011, 15:43
Falls mal in ein paar Jahren wieder jemand über diesen Fehler stolpert (so wie ich 100 Jahre später). Wir nutzen eine GDI+ Implementierung von http://www.progdigy.com und dort heißt die zu definierende Compilerkonstaner nicht DELPHI5_UP sondern VER140 damit die directdraw.pas kompiliert werden kann.
  Mit Zitat antworten Zitat
Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#8

AW: GDI+ Klappt nicht

  Alt 7. Apr 2011, 16:51
Oder man ersetzt einfach die enthaltene Datei jedi.inc durch eine aktuelle Version.
Thomas Nitzschke
Google Maps mit Delphi
  Mit Zitat antworten Zitat
Benutzerbild von ATS3788
ATS3788

Registriert seit: 18. Mär 2004
Ort: Kriftel
646 Beiträge
 
Delphi XE Starter
 
#9

AW: GDI+ Klappt nicht

  Alt 7. Feb 2012, 12:08
Danke für den Beitrag
Martin MIchael
  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 02:28 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