Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi GDI-Handles Leck (https://www.delphipraxis.net/122082-gdi-handles-leck.html)

DeddyH 14. Jan 2009 10:28

Re: GDI-Handles Leck
 
Achso, dann hatte ich das falsch verstanden, sry.

himitsu 14. Jan 2009 10:42

Re: GDI-Handles Leck
 
Liste der Anhänge anzeigen (Anzahl: 2)
.EllipsisPosition = True war völliger Schwachsinn ... muß natürlich epPathEllipsis heißen

PS: epWordEllipsis scheint wohl nicht so rEcht zu funktionieren ... das Ganze soll doch bestimmt das Selbe Verhalten nachahmen, wie es vom STATIC bekannt ist und dort wird dann das ganze letze Wort weggelassen (es gibt also keine unvollständigen Wörter) ... glaub ich zumindestens (falls ich mich richtig erinner)

Wegen dem TStaticText schau ich grad mal, ob ich das jetzt noch schnell find.

[add]
man könnte sich bezüglich TStaticText eine neue Klasse/Komponente definieren, oder (ach, ich liebe es Delphi was unterzuschmuggln :angel2: ) ... siehe Anhang
Delphi-Quellcode:
type TEllipsisStaticText = class(TStaticText)
  public
    procedure CreateParams(var Params: TCreateParams); override;
  end;

procedure TEllipsisStaticText.CreateParams(var Params: TCreateParams);
begin
  inherited;
  // SS_ENDELLIPSIS
  // SS_PATHELLIPSIS
  // SS_WORDELLIPSIS
  Params.Style := Params.Style or SS_PATHELLIPSIS;
end;

DevilsCamp 14. Jan 2009 10:50

Re: GDI-Handles Leck
 
Zitat:

Zitat von DeddyH
Achso, dann hatte ich das falsch verstanden, sry.

Kein Problem. Habe ja auch nicht klar genug geschrieben, wie ich es haben möchte :)


Zitat:

Zitat von himitsu
in D2009 kann man für Dateinamen follgende Einstellungen verwenden (kA. seit wann es das gibt)
.ShowAccelChar = False
.EllipsisPosition = epPathEllipsis

Ansonsten könnte man (glaub ich) auch TStaticText statt TLabel nutzen und das gleiche Verhalten über die WinAPI steuern (TStaticText nutzt doch das STATIC-Control von Windows :gruebel:) lassen (müßte dann aber mal schaun wie man das dem STATIC sagte, das es so kürzen soll)

hmm. Sieht interessant aus. Mal schauen, ob diese Eigenschaften auch im BDS2006 vorhanden sind.

himitsu 14. Jan 2009 10:58

Re: GDI-Handles Leck
 
ich hatte grade das Bild um TStaicText erweitert
und noch Weiteres dazu nacheditiert > siehe vorheriger Beitrag

SirThornberry 14. Jan 2009 11:00

Re: GDI-Handles Leck
 
Zitat:

Zitat von DevilsCamp
...Dummerweise habe vergessen, das Handle mit ReleaseDC wieder frei zu geben => irgendwann gehen die Resourcen zu ende.

Warum ich aber keine Probleme unter Windows Vista habe und unter XP schon: :gruebel:

Ich denke es wird einfach nur anders implementiert sein. Beispielsweise mit einem ReferenzCounter der einfach hochgezählt wird immer wenn GetDC aufgerufen wird und erst wenn der Counter wieder auf 0 gesetzt wird kommt die Freigabe. Bei Funktionen rund um die Desktops schien das bei XP schon so zu sein (da gab jeder Aufruf das gleiche Handle zurück)


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:29 Uhr.
Seite 2 von 2     12   

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