AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Kontrolle freier System-, User- und GDI-Ressourcen unter Win
Thema durchsuchen
Ansicht
Themen-Optionen

Kontrolle freier System-, User- und GDI-Ressourcen unter Win

Ein Thema von Dirk Reichert · begonnen am 30. Apr 2003 · letzter Beitrag vom 2. Mai 2003
Antwort Antwort
Dirk Reichert

Registriert seit: 25. Apr 2003
Ort: Neubrandenburg
4 Beiträge
 
#1

Sparsamster Umgang mit Systemressourcen unter Windows 98

  Alt 2. Mai 2003, 09:19
Für große MDI-Childforms mit vielen Controls sind bekanntlich die Systemressourcen unter Windows 98 begrenzt auf 64 KB. Um dies zu lösen habe ich in den Forms ein PageControl mit TabSheets welche als erstes Control ein TPanel mit alClient bekommen eingebaut. Innerhalb dieses PageControls befinden sich alle Controls.

Mit DestroyHandle habe ich die Handles aller Controls, welche sich auf im Augenblick nicht sichtbaren TabSheets befinden freigegeben. Über CreateHandle hole ich mir die Handle für die Controls des sichtbaren TabSheets zurück.
Für meine User-Ressourcen hatte das vollen Erfolg, die Zahl verringert sich jetzt bei jedem neuen Child-Form nur sehr gering. War ein voller Erfolg.
Allerdings bleiben leider meine GDI-Ressourcen im Keller.

Vielleicht mal bischen genauer. Ich laufe im Change-Ereignis des PageControls für jedes nicht sichtbare TabSheet die Controls durch und gebe mittels DestroyHandle die Handles frei.

Delphi-Quellcode:
procedure Set_FreeRessources(ControlFree: TWinControl);
var
  i: integer;
begin
  for i := 0 to ControlFree.ControlCount -1 do
  begin
    if ControlFree.Controls[i].ClassType = TPanel then
      TUserPanel(ControlFree.Controls[i]).DestroyHandle;
    if ControlFree.Controls[i] is TWinControl then
       Set_FreeRessources( ControlFree.Controls[i] as TWinControl);
  end;
end;
Klappt für die User-Ressourcen prima. Kann man was vergleichbares für die GDI-Ressourcen tun?

Viele Grüße Dirk

[edit=Daniel B]Delphi-Tags gesetzt. MfG Daniel B.[/edit]
  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 08:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz