Behavior of LCL Client Area (was: win32 development)
pascalive at bol.com.br
Tue Sep 24 23:13:35 EDT 2002
Andrew Johnson wrote:
> On Tue, 24 Sep 2002 17:41:13 +0200
> "Vincent Snijders" <vslist at zonnet.nl> wrote:
>> Last week Karl Brandt sent some patches for the win32 interface,
>> which fixed
>> the form size in win32. Have the been applied, because the helloform
>> is still to small?
> Yes the patch was applied.
AFAIK it wasn't applied(i updated cvs today)
> As was also mentioned.. somwhere in that thread, the reason it apears
> to small is because in GTK the Width/Height represent the
> ClientWidth/ClientHeight of the form, so in Win32 it looks wrong. If
> ClientWidth/Height have been implemented properly in Win32, then in
> the example code changing where it set the width and height to set the
> client width/height should make it apear properly.
What i tried to do was the above (it's not complete!), although i
disagree this way.
It looks like the WinControl.ClientHeight/Width act
as WinControl.Height/Width, so setting one or other will do the same thing.
Please correct me if i'm wrong
I think the best behavior is to implement ClientHeight/Width and
Height/Width as Delphi does:
If you set the client sizes automatically the correct window sizes are
set and vice-versa,
in this manner the lcl user could decide if he wants set the client or
the window size and makes ClientHeight/Width really useful.
One way to implement-it:
Setting the ClientHeight would calculate the apropriate (Window)Height
via AdjustWindowRectEx (Now it's only a hack-> it would be done by the
Then the Height would be adjusted and the interface called to set the
The contrary would be true: Height -> ClientHeight
> This is an incompatibility between X-Windows and Win32 design, not a
> problem in the Lazarus code.
Is there a way to set the window size instead of client size in gtk?
Is there a equivalent Windows.AdjustWindow(Client)RectEx in gtk?
More information about the Lazarus