Jump to content

Recommended Posts

๐Ÿ”ฅ Who can accurately recreate this UI in Delphi VCL? ๐Ÿ”ฅ

----

๐Ÿ‘‰ Rules of the challenge:

  • No third-party components โ€“ Only pure VCL!
  • Windows API calls only โ€“ No hacks like setting a blurred wallpaper.
  • True glass blur effect โ€“ The UI must feature real-time Gaussian Blur, not a fake overlay.
  • Resizable & smooth movement โ€“ The form should be fully resizable and draggable without lag.
  • Performance separation โ€“ The blur effect must run on a separate thread, ensuring that UI interactions stay smooth.
  • Native Windows 11 style โ€“ The form should have real rounded corners, using the native Windows 11 API.

Update on the challenge requirements:

  • Regarding Resizing, and even Moving, the developer may revert the formโ€™s design to be Normal in terms of background and borders (to make it easier for everyone to participate and to minimize code for smoother application performance).
  • Regarding updating the background when theย form does not move, you are also not required to provide this background capture (meaning we want everyone to participate, thank you).

---

Happy birthday and a new year for Delphiโ€”and every year, becomes stronger and better...

---

๐Ÿš€ Fun fact: The login form shown in the image is actually running on Windows XP! ๐Ÿคฏ

๐Ÿ’ฌ Can you achieve this in Delphi VCL? Post your best attempt below! ๐Ÿ‘‡

----

286059045_preview3.thumb.png.df227c68059cb3f79fe031fc5b3c3680.png

Edited by bravesofts
update Challenge requirements
  • Like 2

Share this post


Link to post
1 minute ago, Vandrovnik said:

The background is a static image?

No, the background is not a static image. The form background is dynamically captured in real-time, just like a real glass window. It continuously updates to reflect any changes happening behind the form, creating a true transparent and blurred glass effect. ๐Ÿš€

Share this post


Link to post
6 hours ago, bravesofts said:

Post your best attempt below!

Why?

ย 

6 hours ago, bravesofts said:

Fun fact: The login form shown in the image is actually running on Windows XP!

In a browser?

ย 

  • Like 1

Share this post


Link to post
4 minutes ago, Anders Melander said:

In a browser?

in fact your reply is correct,
BUT MY VCL WINDOW STILL DO THE SAME !!

Share this post


Link to post
12 hours ago, bravesofts said:

Resizable & smooth movement โ€“ The form should be fully resizable and draggable without lag.

Is that form resizable and draggable on the web page without third party frameworks?

ย 

There are a few ways that I can think of that you can use to do this with pure non-third-party VCL. Many component authors will find this easy to do.

ย 

If perhaps you are fishing for a solution then consider asking. Someone might even spend the time to show you.

Edited by PeaShooter_OMO
  • Like 1

Share this post


Link to post

I don't understand why there should be a constant recalculation of the "blur" effect. There is a background image, and a small portion of it in the middle has its background blurred. Isn't it always the same part of the image that is blurred?

ย 

If the window becomes smaller, I would just crop the background image instead of re-scaling it.

Share this post


Link to post
34 minutes ago, Der schรถne Gรผnther said:

I don't understand why there should be a constant recalculation of the "blur" effect. There is a background image, and a small portion of it in the middle has its background blurred. Isn't it always the same part of the image that is blurred?

ย 

If the window becomes smaller, I would just crop the background image instead of re-scaling it.

One of his challenge requests is:ย  Resizable & smooth movement โ€“ The form should be fully resizable and draggable without lag

ย 

If the form is to be movable then what is behind it and what would be coming through it via the blur/transparency will change thus the constant re-blurring.

All this is moot. The OP started this challenge from a false or at least diverted premise which makes me question the motives. Unless the OP comes clean on what he/she wants I would not bother.

Edited by PeaShooter_OMO

Share this post


Link to post

To me, the form looks like is is that picture, with a transparent "blur" part in the middle.

ย 

3 hours ago, PeaShooter_OMO said:

Unless the OP comes clean on what he/she wants I would not bother.

He/she has accomplished the shown part in pure VCL and is, understandably, proud of it.

ย 

For myself, I am not going to try because I don't see the necessity to use the VCL for this, I would have made it in HTML/CSS. Still, I would be interested how this should ideally be done with good, old VCL.

Share this post


Link to post
18 hours ago, bravesofts said:

Who can accurately recreate this UI in Delphi VCL?

What do we win?

  • Haha 1

Share this post


Link to post
Just now, FPiette said:

What do we win?

Lifetime support responsibility? ๐Ÿ˜‰ย 

  • Haha 4

Share this post


Link to post

You have earned an abundance of love and respect over the years, especially through your outstanding contributions to UI design. I know you can do itโ€”haha, you've already proven yourself time and time again!

Share this post


Link to post
4 minutes ago, FPiette said:

What do we win?

You have earned an abundance of love and respect over the years, especially through your outstanding contributions to UI design. I know you can do itโ€”haha, you've already proven yourself time and time again!

  • Thanks 1

Share this post


Link to post

Just saw, this challenge. It's for birthday, so I assume Delphi 12.

For now, I am working on FMX Styles but Appearances (themes) in VCL is very similar so if working on TStyleManager is accepted, I think I should accept this challengeย ๐Ÿค”satisfying my curiosity

Share this post


Link to post
On 2/18/2025 at 8:26 AM, Serge_G said:

Just saw, this challenge. It's for birthday, so I assume Delphi 12.

For now, I am working on FMX Styles but Appearances (themes) in VCL is very similar so if working on TStyleManager is accepted, I think I should accept this challengeย ๐Ÿค”satisfying my curiosity

Sorry for that. TStyleManager uses custom resizing instead of the native Windows border, meaning the window won't have a native border & shadow when resizing. The form should be fully resizable and draggable without lag.

--

To help you move forward, try this technique first:
Delphi Borderless Form

This is a good starting point. Regarding rounded corners, the challenge primarily targets Windows 11, but support for older versions down to XP is still important.

--

For the glass blur effect, you should use the provided Windows API. Otherwise, if you implement your own workaround, the blur effect must run on a separate thread to ensure UI interactions remain smooth.

--

Third-party components are not allowed. The window resizing and movement must be smoothly updated without high CPU usage. The app should run as fast and responsively as possible.

---

Thank you for your interest! ๐Ÿ˜Š

ย 

Share this post


Link to post

I'm using a layered window to do a transparent UI effect over video, but as far as I know, you can't do the glass effect in hardware using standard WinAPI, I believe you have to use the composition API for that (is it still considered WinAPI?).

ย 

If no video in the background then it's simple enough to use GDI+ to create an anti-aliased round rectangle (I have pure pascal code to do it, but it's slower), Gaussian blur copy from the background image on paint, etc.

ย 

You'd also have to intercept the hittest message to allow resizing/moving of a borderless window.

Edited by Yaron

Share this post


Link to post
8 hours ago, Yaron said:

I believe you have to use the composition API for that (is it still considered WinAPI?).

Windows Composition API Is Still WinAPI ?

  • Even though itโ€™s sometimes called the โ€œcomposition API,โ€ functions like SetWindowCompositionAttribute or DwmSetWindowAttribute are exported from system DLLs (e.g., user32.dll or dwmapi.dll) and thus part of the Windows API.
  • On Windows 11, you can apply Acrylic (DWMSBT_ACRYLIC) or Mica (DWMSBT_MAINWINDOW) to a window without a custom GPU pipeline, and itโ€™s still hardware-accelerated by DWM behind the scenes.
8 hours ago, Yaron said:

You'd also have to intercept the hittest message to allow resizing/moving of a borderless window.

Delphi Borderless Form

8 hours ago, Yaron said:

Gaussian blur copy from the background image on paint, etc.

Native Windows 11 Rounded Corners

  • You can request real rounded corners via the Windows 11 API

ย 

  • Like 1

Share this post


Link to post

Interesting, let me know if you figured out how to use a layered window as a child under Delphi 7.

Share this post


Link to post
On 2/14/2025 at 2:09 PM, bravesofts said:

You have earned an abundance of love and respect over the years, especially through your outstanding contributions to UI design. I know you can do itโ€”haha, you've already proven yourself time and time again!

LOOOOOOOOOOOOLL

Share this post


Link to post

I'm thinking of publishing my solution under a GPL copyleft style license. Will that be acceptable?ย 

Share this post


Link to post
10 hours ago, David Heffernan said:

I'm thinking of publishing my solution under a GPL copyleft style license. Will that be acceptable?ย 

Of course, yes! It's your hard work and dedication here, and you absolutely deserve not only a license but lifelong respect for your efforts! ๐Ÿ”ฅ๐Ÿš€

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

ร—