TAdvSmoothTabPager flickers when change tab

Hi!.


I have a issue with TAdvSmoothTabPager. When i change the tab page it flickers and the controls on the tab loads by parts. 

I will attach a video to show the behaviour. When changing to the second (Resultados) tab the content loads without problems, but when i back to the first tab (Analisis) the content loads a bit slow and can be uncomfortable. I don't know if is by applying shadows or something. 

https://drive.google.com/file/d/1DyayvjI4q8IwxqioMQm-fGBTXLr9fpcq/view?usp=sharing

I tried this (Apply a Timer OnChanging) but didn't work.
https://forum.lazarus.freepascal.org/index.php?topic=27392.0

And i also set DoubleBuffered to every panel and tabs to True but that didn't work.

Before using TAdvSmoothTabPager (And the smooth controls in general), i was using the built-in TabPager and controls of delphi and this problem wasn't there, so maybe is because of aplyng color, i'm not sure.

The program is running as a DLL extension inside other program.
 

Hi,


The Pager itself is using GDI+ which might be the cause for the slowness when switching tabs. Also the components on the pager are repainting as well. There are various aspects that play when using smooth components, but to better help you and try to find out exactly what is happening, we would like some more information on the project, such as the components, the style, etc... Is this happening in a new project without styles?

Hi! Thanks for your answer.


Regarding the components here is the list:

In the top of the Analisis tab is a TAdvSmoothStepControl that hasn't any special configuration, i only changed the base text and the UIStyle is set to Custom.




Below are the main panels. They are three TAdvSmoothPanel and the 3 has: 
- rounding of 10 
- shadow ofset of 5  
- shadow color of Silver 
- transparent property set to true 
- No Gradient 
- No Border 
- No Background 
- No Glow
- StyleElements set to []
- UIStyle set to Custom
- Resizable set to False


The Left pannel:



It has 4 TAdvSmoothLabel (yellow) and 4 TAdvSmoothListBox
The Label doesn't have any mayor edit. Only text color to black and size to 12.
The list doesn't have any mayor edit. UIStyle set to Custom.

The middle pannel (This is a photo in design time). The items get erased when the program run.

 

I think that maybe this is the panel with problems. In the top is a simple label. Below is a TAdvSmoothComboBox:

- Dropdown button is a picture. One for normal state and other picture a little bit darker when de user hover or click the button. This is a image with the combobox expanded.



Below the combobox is a TAdvSmoothListBox that change his elements when the user selects any options in the combobox. The listbox has a header with the text Variables and in the right is a Smooth Toggle Button that has 2 pictures. One where is not pressed and where is pressed. UIStyle set to Custom.



I wanted to make a button like the one in the bottom of the pannel. neither with smooth buttons and other buttons that i has in delphi palette can't make a button like that, so... i just used a TAdvSmoothListBox to make it (Smooth ListBox are the most customizable controls that i have ever see). 

It has a onclick event that activate a TAdvSmoothPopup:



The popup consist in a frame with 3 components. TCurvyEdit, TRadioGroup and a SmoothListBox with any mayor edits. UIStyle set to Custom.

Finally in the right side is a third panel that has a TCardPanel inside, that change its cards when the user selects an item in the first (left) panel.



The cards doesn't have any special control or component. Only some normal checkbox. And below this pannel is 2 labels with 2 TCurvyEdit and a normal delphi button.




Hi, the TAdvSmoothTabPager has a Transparent property, can you put that to False/True, see if that makes a difference? Also each page, as well as the pager itself has a DoubleBuffered property that is set to True by default. Can you change that to false as well?

I tried set DoubleBuffered to false in TAdvSmoothTabPager and it's pages and it got worse. The page was flickering with any movement with the mouse. I'm new in Delphi and i want to ask you what is DoubleBuffered?. 


And setting Transparent to True or False doesn't seems to affect the form.


Hi,


Here is an explanation on DoubleBuffered:
http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/Forms_TForm_DoubleBuffered.html

What you could do is take out component per component to see if things improve. Other than that, there is nothing much that can be done. TAdvSmoothTabPager is using GDI+ graphics and take up more resources to repaint than a default TabControl or PageControl.