TAdvToolBars are displayed incorrectly in DPI <> 100% (Runtime and Desing)

Bug ADVTooolBar DPI 150.zip (489.1 KB)
On Alexandria 11.2, we have a project with a TAdvDockPanel in which there are several TAdvToolBars. In DPI 100% everything works correctly but when we go to a DPI of 150% (they also happen with DPI 125%) these components are seen in a disorderly way both in the Delphi Ide and in Runtime, different from how they are originally.
Steps to reproduce:

  1. Set Windows with a DPI 150%
  2. Open the attached Project
  3. The first look (DPI 150.1.jpg) already shows AdvToolBar4 from last place -> Wrong
  4. We press "Alt+F12" (to see the DFM) without doing anything else we press "Alt+F12" again. AdvToolBar3, AdvToolBar4 , AdvToolBar5 appear in a different place without having done anything.
  5. We repeat step 4, that is, we press "Alt+F12" twice and they are again in different positions.

These errors in the display order are also seen in Runtime, with the bars appearing in a different order than they are originally with a DPI of 100%.

This bug is in the last TMS version (10.8.3.0)

We cannot see that anything changed relevant to this in recent versions.
What was the previous release you were using?

Hi Bruno,

We were previously using the version v8.4.0.0

Thanks

This has only happened when upgrading Delphi to version 11.2 (and TMS v10.8.3.0), which did not happen in Delphi 11.1 (and TMS v8.4.0.0)

We're investigating how 11.2 introduces this breaking change.
As workaround for now, can you set the IDE form designer to fixed 96dpi?

Hi Bruno

The problem is not only in design, but also in runtime.

If I compile the project on Windows with a DPI of 100%, when I run it, it looks perfectly, but if I run the same exe at a DPI of 150%, it looks incorrect.

What I really need is a workaround so that this problem does not occur at runtime with 150% DPI.

Thanks

We could reproduce this and we're investigating this issue.

We applied a fix that will be included in the next update.

Do you know when this update is planned?

Is it possible that you can send me the patched units to be able to fix this error for my customers?

Thanks Bruno

A release is due this week.

Hi Bruno

We just updated the version of TMS to the one you uploaded today (v10.8.4.0) which had the display bug fixed but we still see it wrong. We attach a series of screenshots in which you can see how it looks good at 100% DPI and when opening the project at 150% DPI the last two TAdvToolBar continue to move every time we press Ctrl+F12.

Delphi Splash

We have detected another problem. If we have Delphi closed and we open the project by double-clicking on the project, the TAdvToolBar appears wrong but they are complete. However, if we have Delphi open and we drag the project onto the IDE or open it through the Ide menu, then some bars appear broken (see attached screenshots):

We have also verified that the problem persists at runtime:

That is strange.
When you do not open the form at design-time, just open the project from the IDE, compile & run, do you also see the issue?

When I open the project from IDE it automatically opens the form too, and when compiling it looks bad at runtime.
It is independent if the compilation is done with the form open or closed in the IDE, the result is the same, it looks bad at runtime.
To reproduce it I do the following:

  1. Open Delphi IDE
  2. File -> Open Project - open the project included in the zip attachment in the first message (Opening the project automatically opens the form)
  3. Project -> Options -> Search path -> indicate the folder with the new version of TMS 10.8.4.0
  4. Build and run

I cannot see a problem with TAdvToolBar v6.8.3.8 anymore. I retested everything once more on Delphi 11.2, with TMS VCL UI Pack 10.8.4.0 with a 150% DPI screen.
Our compiled test can be downloaded here:
http://www.tmssoftware.net/public/toolbarsequence.zip

Hi Bruno
With your project it works fine for us but when trying to do it in our main project we continue to see the errors. We attach a project to reproduce it. Please, follow these steps:

  1. Open Delphi IDE on (100% DPI Windows)
  2. Open attached project
  3. Close Unit1.pas before compiling (it's important)
  4. Compile in 100% DPI (with Unit1 closed)
  5. Run in 150% DPI Windows
    We attach the image of how we see the project, this is different if we compile with Unit1 open, in this case when executing the exe it looks fine.

Project1.zip (178.3 KB)

I retested this with Delphi 11.2
The compiled EXE from your project can be downloaded here:
http://www.tmssoftware.net/public/advtoolbar150dpi.zip
This was compiled on Delphi 11.2 running on a 100% DPI screen.
This works as expected both on 100% and 150% DPI.

Hi Bruno
We have tried it on two different computers with the same result. I have recorded a video so you can see the result. As you can see in the video, the version of TMS is the latest (we downloaded it again today) and recently installed. You can also notice that we close the form before doing the compilation. I hope it helps you locate the problem.
Thank you very much for all your effort.
Video Bug TAdvToolBars.zip (3.1 MB)

We did exactly the same.
Did you try our compiled text EXE:
http://www.tmssoftware.net/public/advtoolbar150dpi.zip ?