I am looking for a container control in Delphi XE3 FireMonkey, which can:
Hold multiple controls inside of it so that I can move them together by moving the container control itself.
The container control itself should be transparent so that it will not show a border.
In the past, I used TPanel from the VCL. I set its BevelInner and BevelOuter to bvNone to hide the borders. However, in a FireMoney app, TPanel does not have such properties so I cannot hide its borders.
Related
I have a frame with a panel.
on the panel is a tchart graph and custom panel that overlays the graph (so it's on top of the graph, with the user toggling which one is showing).
Additionally, I have 3 other panels that contain text, that user also toggles visible/not visible.
the problem: starting in Delph 10.4, the panel is showing sections of the chart. the problem didn't exist in Delphi Seattle (and untested in 10.2 and 10.3), but in 10.4, I can't show the 3 panels without showing sections of the chart.
To replicate, add a panel to a form, put a chart on the panel. add a second panel to the form, not visible, with some text. add a right click menu to set the panel visible. sections of the chart are 'bleeding through' the panel. This also happens with group boxes.
this is what it looks like:
question is: how can I get the panels to show correctly?
How I want it to look:
I can reproduce this in Delphi 10.3 Rio
This happens only if the panel is added as child control of the TChart component and has its ParentBackground property enabled (enabled by default).
I'm guessing that TChart background is drawn with transparency at some level. And when ParentBackground property of any child component is enabled backgroud of such components is also drawn using transparency.
Disabling the ParentBackground property of your Panels will solve your problem.
I can change the appearance of VCL buttons by using the bit map stile designer with specifying a bitmap to [Objects]-[Button]-[Face]-[Bitmap].
So I tried to change the VCL panel's appearance in the same way with [Objects]-[Panel]-[Frame]-[Bitmap] and [Objects]-[Panel]-[FrameNoCaption]-[Bitmap].
The test dialog shows that buttons are rendered in an expected way, but panels are not.
How can I apply a VCL style to a TPanel?
I'd like to scroll an individual TabSheet within a PageControl if the height of the sheet becomes less than a value.
If I put a ScrollBox on the TabSheet, the themed background of the TabSheet is not painted (it's overwritten by the single color background of the scrollbox).
I've been trying to find / create a transparent scrollbox component with no luck. Any other ideas?
I'm using Delphi 7.
Thanks!
To answer my own question, TMS has a transparent scrollbox component called "TAdvScrollBox" that works with themed tabsheets too:
http://www.tmssoftware.com/site/asb.asp
Maybe this will help somebody:
There is a small bug with the component that turns the ParentCtl3d property to false causing ListViews to be rendered with a black border instead of a 3d one. It's easy to fix by setting ParentCtl3d to true programmatically on FormCreate.
When I have a TToolbar and I put non-toolbutton controls on it, there is a superfluous vertical bar through the control. How can I get rid of the bar?
In the image below, the toolbar contains only two toolbuttons and a TLabel and no separators. Notice the vertical bar through the letter V.
If I recall correctly, this is due to the handle of transparency of other non TToolButton controls that are placed in the TToolBar and, for this reason, if you set "Transparent" property of your TLabel to false, the vertical bar will disappear.
you may want to try JVCL component suites (free) Delphi Jedi. It has a lot of visual components, including all sorts of panels & buttons. They also have panel with gradient colors, and image buttton for examples.
Delphi XE2 Hot Update 4, Still got this bug, i work around this bug by :
Setting TLabel.Autosize := False;
TLabel.width := 50; --> just make sure its more than its caption, at least by 10 pixels
TLabel.Alignment := taRightJustify
Thanks.
I have a pagecontrol in the center of my main form (form1 in my image), and I want to open other forms docked into the pagecontrol. Because I have many controls on my child form, I need both vertical and horizontal scrollbars (on the child form I have active scrollbars option active), but here is the catch: when I use VCL Styles, my scrollbars aren't drawing as they should be and they are unusable. Is this some kind of a bug of VCL Styles?
The scrollbars (TControlScrollBar) used by the TForm doesn't support the Vcl Styles (you must report this to the QC page), if you want fix that you must override that control and paint the scrollbars using the Vcl styles methods, but that will requiere a lot of work, as simple workround you can use the TScrollBar component (in your form) which properly supports the vcl styles.