TAdvToolBarPager issue when UIStyle is office 2019

Create a new project with single main form. Add a TAdvToolBarPager to the form and ensure UIStyle is set to tsOffice2019White. Ensure form is descended from TAdvToolBarForm. Compile and run application.
Maximize application - appliaction stays on top of windows task bar and shows a small gap at base of screen.
Change the UIStyle to tsOffice2010Blue, for example, and when application is maximized there is no bottom gap and the windows taskbar displays correctly.

Hello,

I did exactly as you mentioned and I do not see this problem.
Could it be possible that some other things need to be changed?

Any idea what "other things" I might need to look at changing? I simply dropped the component on a blank form and compiled!

Is your windows taskbar set to automatically hide (it looks like its fixed)?. Mine is set to auto-hide in desktop mode in windows settings.

Right, I'm either doing something very wrong or there are problems with your code!

I've created a simple test project with a TAdvToolBarPager on a new form descended from TAdvToolBarForm. I've then added two buttons to let me switch at run-time between two office styles; code as below:

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
	Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, AdvToolBar, AdvStyleIF;

type
	TForm1 = class(TAdvToolBarForm)
		AdvToolBarPager1: TAdvToolBarPager;
		AdvToolBarPager11: TAdvPage;
		AdvToolBarPager12: TAdvPage;
		AdvToolBarPager13: TAdvPage;
		Button1: TButton;
		Button2: TButton;
		procedure Button1Click(Sender: TObject);
		procedure Button2Click(Sender: TObject);
	private
		{ Private declarations }
	public
		{ Public declarations }
	end;

var
	Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
	AdvToolBarPager1.UIStyle := tsOffice2019White;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
	AdvToolBarPager1.UIStyle := tsOffice2010Blue;
end;

end.

When run I get these results:

Starts in Office2019 white style.

Note: the window shadow is not standard as compared to file browser window below which is more diffused (just an observation).

Maximize the window and my windows taskbar (which is set to auto-hide) is behind the application window (screenshot shows base of application window with my task bar visible behind - the orange bars are active tasks):
tms2

Use BUTTON2 to switch to Office2010 blue style:

Run on a Windows 7 system the window looks like this:
tms6

So, I guess Office 2010 on Windows 10 fails to account for the change in O/S window style?

Maximize the window and my windows taskbar is still behind the application, but is now not even visible - I guess because of the oversized shadow window.

tms4

Use BUTTON1 to switch back to 2019 style, then BUTTON2 to switch again to 2010 (might need to do this a few times), eventually you see this in 2010 style mode:

tms5

Note: the cut-out top-right where windows min/max/close should be and an artifact on the top-left. OK, I'm being picky now - but it's a bit strange. You can also see these white blocks on the Win7 screenshot above.

So, am I setting this up wrong? Are there bugs in the TMS toolbar / form components?

I also tried using the TMS toolbar wizard "TMS Office 2019 ribbon application" and get the same results.

I'm using RAD studio 10.4.2 Sydney on Windows 10 Pro. Test applications written with Delphi although I use C++ day-to-day (you get the same results). I ran in to these issues whilst migrating two of our projects from RAD studio XE. I need both applications to run on Windows 7 and 10 (including both embedded variants) so want to use the 2010 style for Win7 and 2019 for Win10.

It should also be noted that using RAD Studio XE with TMS 6.9.1.0 (TAdvToolBarPager 5.4.6.0) on Win7 I have no issues - toolbards draw as expected and windows taskbar / form z-order behaves correctly.

Changing the style involves more than just changing TAdvToolBarPager.UIStyle as there is a form involved, the app menu, ...
The correct way to change the entire app style is to use a TAdvFormStyler and change AdvFormStyler.Style.
This sample demonstraters this.
Project1.zip (22.9 KB)

Hi Bruno,

Thanks for the sample - but this still results in exactly the same outcome as I detailed in the previous post.

I'm not that bothered by the form shadows and artifact issues. The thing that I really need to resolve is why does the form stay above my windows taskbar. Can you please test, using your sample project, that when you maximize the form the windows taskbar pops up when it is set to auto-hide. The test Gjalt performed earlier in this thread was with auto-hide off.

My taskbar settings:

My sample was created to show the style changing.
My colleague informed we are investigating the issue with auto-hide taskbar.

Thanks Bruno, hopefully you guys will be able to reproduce the issue or suggest a work-around.