Имеется следующий код:
| Код | type TForm4 = class(TForm) private { Private declarations } public { Public declarations } protected procedure WMNCCreate(var Message: TWMNCCreate); message WM_NCCREATE; procedure WMNCCalcSize(var Message: TWMNCCalcSize); message WM_NCCALCSIZE; end;
var Form4: TForm4; TitleBarSize: LongInt;
implementation
{$R *.dfm}
{ TForm4 }
procedure TForm4.WMNCCalcSize(var Message: TWMNCCalcSize); begin end;
procedure TForm4.WMNCCreate(var Message: TWMNCCreate); var dwStyle: longint; begin TitleBarSize := (GetSystemMetrics(SM_CYCAPTION) div 2) + 1; dwStyle := GetWindowLong(Handle, GWL_STYLE); // dwStyle := dwStyle or WS_SMALLTITLEBAR; if (dwStyle and WS_DLGFRAME) = WS_DLGFRAME then dwStyle := dwStyle and not longint(WS_DLGFRAME); dwStyle := dwStyle and not (WS_BORDER); SetWindowLong(Handle, GWL_STYLE, dwStyle);
inherited; {Call default processing.} end;
|
Все выше указанное делается для того, чтобы убрать у формы заголовок и при этом иметь возможность изменять размеры формы при помощи мыши. Но наткнулся на один нюанс. Если теперь навести курсор мыши на один из 4-х углов формы, то курсор, как и должен, меняется на курсор который символизирует что можно менять размер формы, но когда начинаешь плавно двигать курсор по одному из краев формы, то он, напротяжении определенного растояния не меняется на вертикальную/горизонтальную стрелочку для изменения размеров. Как это исправить? http://img63.imageshack.us/my.php?image=20070831234218bp8.png |