Lazarus/Codetyphon/freepascal translucent window - transparency

I have seen this : form:Transparent, Control on form:non Transparent?
I would like to create a translucent window on linux, where the window background has an alpha value of, say, 100, but all components on top of it have full opacity.
This shouldnt be a splash screen. The window borders should exist, and the window should be resizable, draggable.
I dont see any option for doing that in Linux. there is only form alpha-blend, which forces everything to the same opacity.
Please note, that I would like to do this with QT-bindings, as opposed to GTK-bindings, if possible.
Help please.

Related

Change the StatusBar text color based on underlying content

In our application we have a page where the StatusBar overlays user generated images. Sometimes these images have a darker top, and sometimes a lighter. This means sometimes the Statusbar on that page isn't visible, or is extremely hard to see. Considering this is the main page of our application, I'm wondering if there's a way to change the color of the StatusBar text based on the underlying content.
(Best font color for the background).
Yes, I'm aware we could show a static background color for the StatusBar, but that would be extremely tacky.
I have perfect way for this: in top of your view with image create minimal shadow. It will be invisible to the user

UIWebView Rotation and Background Color

I've run into an interesting situation with a UIWebView. In Interface Builder, I set all four constraints to equal the margins and filled the webview with content. It works exactly as you'd expect.
An issue occurs when I rotate the webview. The webview rotates but in doing so, it reveals an grey background color. This isn't a color that I've set. In fact, I set the parent's view to have a black background color to match the webview content.
Here are my constraints for reference:
I'd appreciate any guidance on how to make my webview will the entire border or at least, manually change the grey color. Much thanks!
Note: This only occurs in the simulator. I haven't tried this on a device yet.
Ack ... it was the background view that was the culprit. The simulator didn't pick up my color changes. I never did a clean on them. I tested today and was able to change the grey color to the one of my choosing.

How to eliminate black border in maximize animation?

This error/artifact occurs when any window is maximizing from normal view.
The black area is the place on the screen where at window state = wsNormal one could see the window behind/desktop and not the form. The resizing animation makes it visible, that is the place where the form is resizing is shown to have a black color.
Is there a solution to it?

Why TPanel does not show correct frame/border in Delphi XE?

Tpanel does not show the top and left border under Delphi XE/Win 7.
Why?
Example (I just dropped few TPanel from pallete to my form, inside of a TTabSheet):
How do I make it look like the original Delphi 7 control (with all 4 borders), without changeing its properties every time I place it on my form?
Set ParentBackground to false.
Above is a blue panel on a green form (ParentBackground = false). Notice the white upper-left border and the gray bottom-right border. Of course, if both the form and the panel are white, the white border will become invisible.
That is how it meant to be drawn. The 3D effect is as if there was a light source shining from the top left. That's why the bottom and right edges are in a shadow cast by the raised panel.
Regarding your updated question, it sounds like you want your application to run without themes. The easiest way is to uncheck "Enable runtime themes" in the Application pane of the project settings.
But of course that would look odd nowadays. If you are using the panel to group related controls, perhaps a group box would be better. My instincts are that panels with raised borders will look poor on modern themed Windows.

How to add background images to Delphi forms

How can I add a background image to my delphi form? I added a TImage, but now the labels aren't visible any more, and the texts of my checkboxes are in a blue "box" (blue is the background color i chose). This blue doesn't look very good on the background image, and the hidden labels also don't look good. How do I fix these problems?
For the labels: make sure that they are transparent (Transparent property in the Object Inspector), and that they are on top of the TImage in the Z-order of controls. To correct this you can execute the "Send to back" command on the TImage component in design mode, it will make all other non-windowed controls appear on top of it.
For the checkboxes I don't know what the problem in your case is, in Delphi 2007 checkboxes appear properly transparent when put over a TImage. Maybe you use an earlier Delphi version? If so it would be good to mention this in the question. There may also be a different behaviour depending on whether themes are active. Again, hard to say without further information.
Move the TImage to the back of the form (right click, order -> send to back).
For labels, set the Transparent property to true. For checkboxes and radio buttons, at least in Delphi 6 which is all I have access to, there is no transparent property. The way round this is to reduce the controls label to zero size and the provide your own additional TLabel, which can be transparent.
Can I also say that I find windows with background images ultra naff, and I know I'm not alone in this.

Resources