Styler, frame, AdvPanel/AdvGroupbox

Hi !

I have an Advpanel with styler.
I put a frame into this panel .

If in frame is a panel with a privat styler, the frame colour style is OK. But its a bit different the owner colour, dont fit to owner AdvPanel, be visible, this is a frame.

If i  put an AdvGroupbox with transparent property, its ok. If AdvGroupox is in a frame, and put a frame into the AdvPanel, not transparent.

What can i use in frame, what fit by colour to owner AdvPanel ?

I could not reproduce a problem here. Do you have some sample project source with which we can reproduce this issue here?

Sorry, the problem is likely my basic english.


I often use AdvPanels on my forms, and often use frame on panels too.
Visuality perfect, when colours of frame not different to colorus of parent AdvPanel.
The frame is merged into AdvPanel.

If on the frame is an advpanel, and its have a panelstyler, the parent Advpanel style same as child frame style.
This OK.
But beacuse the different size of parent and children, the colours not same on the borders side parent and side children. The frame isnt merged into parent.

Do you mean that the frame is not transparent?
If so, a frame is indeed not transparent. This is a limitation of the frame itself.
If you think there is a problem in our component(s) and it persists, please provide some sample source app with which we can reproduce this here.

Simple sample:
- put a AdvPanel with a big size to the form, AdvPanel1
- put an another AdvPanel with a smaller size to the AdvPanel1, this will be AdvPanel2, for example left=100, top=100
- set either syter and style same
- the result 2 beautiful blue panel

But i would like, that the smaller AdvPanel merged into bigger AdvPanel.
The color of point at  99,99 of AdvPanel1 not math the point of AdvPanel2 0,0
It's not problem, not error, but i thinked this solvable by a simple way.

If i get the color of AdvPanel1 99,99, and set this value to AdvPanel2.Color property, and do similar with right bottom corner color, i think this solved.
But i didnt found a simple way to get a pixel color of AdvPanel.

Possible i do from a small different to a big problem. Sorry.

provide (mailto: a ready to run project that
demonstrates the issue so the responsible developer can investigate this


I had a similar issue where I wanted child panels to blend in with the colour gradient of the parent panel, i.e. be transparent. Assigning the same style to a child panel simply restarts the gradient so unless the panel happens to be at Top = 0 within the parent panel, it will stick out.
I worked around the problem using a TAdvSmoothPanel with specific fill settings as the base for a new custom panel class, as shown in the constructor below. This allows the panel to be transparent but you then have to be carefull when assigning a new style to a FormStyler as the AdvSmoothPanel will pick this up automatically and the transparency will be lost. This approach won't work for child panels that are placed on a frame and then inserted into a parent frame as the frame itself won't be transparent, as Bruno mentions above.
__fastcall FMyTransparentPanel::FMyTransparentPanel(TComponent *Owner)
  : TAdvSmoothPanel(Owner)
    Fill->BorderWidth = 0;
    Fill->Color = clNone;
    Fill->ColorMirrorTo = clNone;
    Fill->ShadowOffset = 0;
    Fill->Glow = gmNone;
    Transparent = true;
Hope this helps.

Ups, i did'nt know, that the AdvSmoothPanel's have a transparent property. :-)
But for the present, i would'nt like to use AdvSmoothPanel.
Thanks for information.

The TMS support sent this solution, i will try this soon: