Forum > LCL

Inconsistent borders around Edit Boxes

(1/3) > >>

vmishka:
Hello,

I am trying to move to Lazarus from Delphi. I wrote a simple app with three TEdits, a TComboBox, and a TListBox. The borders for all of these controls are set to bsSingle. The Combo Box and List Box always display a thin border, as expected. However, the Edit boxes are inconsistent, often with just a lower border, sometimes with a complete border after you click into a different control. There is a blue line at the bottom when the control has focus, but no real border (is there a way to not have the blue line, the flashing cursor should be enough indication?).

Can someone explain this behavior of inconsistent borders to me and is there a way to "correct" it. I am running Windows 11 64-bit, Lazarus 2.2.0, and my monitors are 2560 x 1440 with 125% scaling. In the project options "Use LCL scaling (Hi-DPI)" is checked and DPI awareness is set to "On." I tried scaling my monitor at 100% and that didn't correct the problem. A screenshot is attached (but I don't see it in when I preview).

Thank you for any help.

jamestien:
Noticed also this TEdit border issue, and password char (not being rounded dot) on Windows 11.

I think it may be widget related, as Lazarus is cross platform, it doesn't depend on the native OS control like Delphi does. Lets wait for the updates...

wp:
Dont't blame Lazarus for this. It is the latest style idea by Microsoft. Lots of confusion now: https://sjmulder.nl/2021/textboxes/

Not sure about the occasionally partially drawn upper border line, though; I've never seen this before except for Lazarus applications.

vmishka:
jamestien and wp, thank you for those observations.

wp, thank you for that link, it explains a lot.

It would be nice to know why I am getting partially drawn borders including parts of a side (including in the IDE itself before the app is compiled).

JuhaManninen:

--- Quote from: jamestien on January 27, 2022, 04:35:18 am ---I think it may be widget related, as Lazarus is cross platform, it doesn't depend on the native OS control like Delphi does. Lets wait for the updates...

--- End quote ---
Actually Lazarus does depend on native OS / widgetset controls. LCL is a binding library, as opposed to a custom drawn library.
WxWidgets has the same strategy, many other GUI libs are custom drawn.

Navigation

[0] Message Index

[#] Next page

Go to full version