Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Frosteffekt für VCL Form (https://www.delphipraxis.net/216693-frosteffekt-fuer-vcl-form.html)

andyvdeu 13. Feb 2025 15:42

Frosteffekt für VCL Form
 
Hallo Leute, ich würde gern die Hauptseite meines Programms die Sensible Daten enthält nach gewisser Zeit mit einem Schleier (Frost, Blur) unleserlich machen.
Gibt es hier eine Möglichkeitfür VCL, für FMX scheint es das zu geben? Ich habe das schon bei der Software meines Hausarztes gesehen.
FMX GitHub: https://github.com/Spelt/Frost-Glass...screenshot.png

stahli 13. Feb 2025 16:46

AW: Frosteffekt für VCL Form
 
Ob es etwas fertiges gibt, weiß ich nicht.
Such mal nach AlphaBlend, da sollte es ein paar Infos geben...

jaenicke 13. Feb 2025 16:52

AW: Frosteffekt für VCL Form
 
Alphablend habe ich auch verwendet. Ich habe ein zweites Fenster synchronisiert an der gleichen Position vor dem zu versteckenden Fenster angezeigt. Das klappt ganz gut.

Uwe Raabe 13. Feb 2025 17:04

AW: Frosteffekt für VCL Form
 
AlphaBlend macht aber kein Blur. Man kann also bis zu einem gewissen Grad hindurchsehen und so möglicherweise noch was lesen.

Das Prinzip, den darunterliegenden Screen-Inhalt in eine Bitmap zu kopieren, mit einem Blur-Effekt zu versehen und dann darzustellen, ist ja erstmal nicht zu bemängeln. Für einen Blur-Effekt unter VCL gibt es hier ein paar Informationen: Delphi blur Effect using VCL

jaenicke 13. Feb 2025 17:33

AW: Frosteffekt für VCL Form
 
Dafür habe ich zusätzlich zur Transparenz noch etwas gemacht. Ich erinnere mich nicht mehr so genau, aber ich glaube ich hatte DwmEnableBlurBehindWindow verwendet.

Seit Windows 10 gibt es noch SetWindowCompositionAttribute. Das habe ich noch nicht verwendet, sieht aber auch recht einfach aus.

Manuell den Effekt auf dem gleichen Formular zu erzeugen, ist natürlich für den Zweck hier aber auch ausreichend.

Kas Ob. 13. Feb 2025 17:55

AW: Frosteffekt für VCL Form
 
Liste der Anhänge anzeigen (Anzahl: 2)
AlphaSkins library has this feature built-in and it is easy to adopt and use anywhere you want.

I am attaching screenshot of the effect from the MegaDemo at https://www.alphaskins.com/ademos.php
Anhang 57397
Anhang 57398

Redeemer 14. Feb 2025 07:59

AW: Frosteffekt für VCL Form
 
Delphi-Quellcode:
Font.Size := 0
?

Rollo62 14. Feb 2025 08:55

AW: Frosteffekt für VCL Form
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1546164)
AlphaBlend macht aber kein Blur.

Man könnte vielleicht ein Image mit einem "frosted" Window-Bild darauflegen?
Dann sollte es doch ungefähr so aussehen, wie gewünscht und man hätte noch Designmöglichkeiten.

Rollo62 14. Feb 2025 09:02

AW: Frosteffekt für VCL Form
 
Passt vielleicht gerade zum Thema .... in der englischen DP
https://en.delphipraxis.net/topic/12...comment-100795

andyvdeu 14. Feb 2025 12:13

AW: Frosteffekt für VCL Form
 
Vielen Dank für eure Antworten :) ich schaue mir mal die AlphaControls und auch das SetWindowCompositionAttribute an.

jaenicke 14. Feb 2025 13:19

AW: Frosteffekt für VCL Form
 
Unter Windows 11 ist der Blur-Effekt so gering, dass man alles weiter erkennen kann. Da bleibt dann wirklich nur, selbst ein solches Bild zu generieren und anzuzeigen oder etwas mehr Aufwand mit der API zu betreiben...

himitsu 14. Feb 2025 14:28

AW: Frosteffekt für VCL Form
 
Liste der Anhänge anzeigen (Anzahl: 2)
AlphaBlend macht nur "gleichmäßig" transparent,
wohingegen GlassFrame es verschwimmen lässt.

Ob es jetzt besser ist, das Fenster selbst zu ändern oder ein teiltransparentes Panel drüberzulegen oder gar eine zweite verschwommen transparente Form über die eigene Form .... wie man's mag.

https://docwiki.embarcadero.com/Libr...orm.GlassFrame
https://learn.microsoft.com/de-de/wi...-window-frames


Oder einen ScreenShot des Form-Content, dieses unleserlich bearbeiten und dann via rahmenlosem TPanel + TImage oder OnPaint in die Form, über alles drüber und den eigentlichen Inhalt disablen.

Der schöne Günther 14. Feb 2025 14:35

AW: Frosteffekt für VCL Form
 
Diese Bilder.

Windows 7 war so minimalistisch schön 😭

Windows 10 ist so ein abgrundtief hässliches Frankenstein-Monster, das ist echt ohne Vergleich...


Ich würde mich nicht auf den WDM-Blur-Effekt verlassen, selbst wenn man den noch irgendwie reaktivieren kann.
Dann kommt einer, der hat noch sein Windows auf alte Rechtschreibung und "Classic Theme" gestellt.
Dann kommt der nächste, und geht über RDP rein.
Dann kommt einer, der braucht einen Screenreader, der ihm Textbausteine aus der Oberfläche vorliest.

Wenn es etwas zuverlässig zu verstecken gilt, dann sollte man da nicht einfach was drüberlegen, sondern es wirklich _nicht_ anzeigen und stattdessen durch eine Bitmap ersetzen. Dann kann man sich auch sicher sein, dass es nach einem Windows-Update immer noch aussieht, wie vom Entwickler beabsichtigt.

Rollo62 14. Feb 2025 16:38

AW: Frosteffekt für VCL Form
 
Zitat:

Zitat von himitsu (Beitrag 1546213)

:thumb:

Ich fass es nicht, was Delphi alles schon integriert hat. :-D

Da hat es sich ein ordentliches Geburtstagsgeschenk redlich verdient.

Uwe Raabe 14. Feb 2025 22:25

AW: Frosteffekt für VCL Form
 
Zitat:

Zitat von Rollo62 (Beitrag 1546222)
Ich fass es nicht, was Delphi alles schon integriert hat. :-D

Da gibt es allerdings eine Einschränkung:
Zitat:

Diese Eigenschaft steht nur in Windows Vista oder Windows 7 mit Aero zur Verfügung. Ansonsten wird der Glas-Frame ignoriert.

Rollo62 15. Feb 2025 20:02

AW: Frosteffekt für VCL Form
 
Ja, schon klar, Aero ist Geschichte.
Deshalb ist es wohl auch an mir vorbeigegangen, war wohl nicht so wichtig und ich fand das auch nie so spannend.

Aber Delphi ist doch immer auf der Höhe der Zeit, das finde ich nunmal sehr gut :thumb:

himitsu 15. Feb 2025 20:44

AW: Frosteffekt für VCL Form
 
Liste der Anhänge anzeigen (Anzahl: 1)
Mir war so, als hatte ich irgendwo noch was Transparentes mal gesehn. :shock:

"ignoriert" ist aber nicht ganz passend.
Beachtet wird er noch, aber nur wie ein normaler Rahmen ... wer ist denn bitte auf diese saublöde Idee gekommen?

Der schöne Günther 17. Feb 2025 08:28

AW: Frosteffekt für VCL Form
 
Zu Windows 7-Zeiten sah das schick aus, das hatte ich stellenweise sogar mal in Popups einer Touch-Bedienung verwendet, um den Rand dicker zu machen.

Ich finde es sinnvoll, das drin zu lassen und zu dokumentieren, dass es heute keine sinnvollen Auswirkungen mehr hat. Wer weiß, vielleicht führt Windows 12 hier wieder etwas ein und recycled das. Man weiß ja nie...

Uwe Raabe 17. Feb 2025 10:26

AW: Frosteffekt für VCL Form
 
Zitat:

Zitat von himitsu (Beitrag 1546270)
Beachtet wird er noch, aber nur wie ein normaler Rahmen

Dass der GlassFrame nicht dargestellt werden kann, ist ja dem Betriebssystem geschuldet. Auf die Positionen der enthaltenen Controls sollte das aber keinen Einfluss haben - oder worauf wolltest du hinaus?


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:28 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 by Thomas Breitkreuz