AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte TDimPanel für BodenseeMatze
Thema durchsuchen
Ansicht
Themen-Optionen

TDimPanel für BodenseeMatze

Ein Thema von Renate Schaaf · begonnen am 28. Mai 2025 · letzter Beitrag vom 2. Jun 2025
Antwort Antwort
Bodenseematze

Registriert seit: 10. Jul 2023
77 Beiträge
 
#1

AW: TDimPanel für BodenseeMatze

  Alt 2. Jun 2025, 09:44
Vielen Dank, Renate!

Um es unter Delphi7 zum Laufen zu bringen, muss man
  • von "uDimPanel.pas" das Encoding von UTF8+BOM auf ANSI ändern;
  • alle Aufrufe _bitmap.SetSize und _scr.SetSize aufsplitten in setzen der Properties Height/Width (TBitMap hat in D7 noch keine SetSize-Methode)
Im Demo-Projekt müssen
  • einige Properties, die es unter D7 noch nicht gibt, beim Öffnen der Form in der IDE ignoriert werden und
  • die Initialisierung mit ReportMemoryLeaksOnShutdorn auskommentiert werden

Danach funktioniert es sehr gut bei mir - habe in "FormCreate" nach erzeugen der fMyWinControls noch die eigene Form zur Liste hinzugefügt:
Code:
  fMyWinControls := TList.Create;
  fMyWinControls.Add(self);
Damit lässt sich dann auch die gesamte Form "dimmen" - das ist das, was ich benötige...
(wobei hierbei leider die Titelzeile voll sichtbar und aktiv bleibt - aber das ist wg. der Lösung mit dem abhängigen DimPanel so...)
...meine eigene Lösung war bisher mit einer eigenen "DimForm", die sich über die zu dimmende Form legt.
Das hat aber ein paar Probleme, da das Handling der beiden Forms (die DimForm und die eigentliche) synchronisiert werden muß;
z.B. wird beim Doppelklick auf das Taskleistensymbol das eigentliche Fenster minimiert, die DimForm bleibt aber stehen...
(da habe ich noch keine Lösung für gefunden - finde einfach nicht die richtige Event-Methode / Windows-Message dafür)
...das Problem taucht mit der Lösung über ein Panel naturgemäß nicht auf!

Ich werde mal schauen, ob / wie ich die Panel-Lösung bei mir integrieren kann (und ggf. noch die Titelzeile der Form "abdimmen" kann).
  Mit Zitat antworten Zitat
Renate Schaaf
Online

Registriert seit: 25. Jun 2020
Ort: Lippe
135 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: TDimPanel für BodenseeMatze

  Alt 2. Jun 2025, 11:35
Toll, dass es funktioniert.
Du könntest natürlich auf den Desktop malen, um die Kopfleiste abzudimmen, aber dann hast Du wieder die gleichen Synchronisierungsprobleme.
Würde mich interessieren, wenn Du dafür eine Lösung findest.
Ich dimme bei mir auch das ganze Form ab, wenn ich einen modalen Dialog anzeige. Dadurch wird der Dialog hervorgehoben und der Benutzer sieht gleich, was jetzt wichtig ist. Die Kopfleiste ist dann eh abgestellt, nur eben nicht visuell.

Renate
Renate
  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 15:03 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