Вниз
Скачать: CL | DM;

Изменение размеров формы без заголовка   Найти похожие ветки 

← →
Skyhawk   (2004-11-30 12:29) [0]

Как изменить размер формы если у нее borderStyle=bsNone?


← →
ssk ©   (2004-11-30 12:34) [1]

попробуй сделать так

procedure FormWithoutCaption(Form:TForm);
var
FSizeCaption: Integer;
begin
with Form do
   begin
     FSizeCaption := GetSystemMetrics(SM_CYCAPTION);
     SetWindowLong(Handle, GWL_STYLE, GetWindowLong(Handle, GWL_Style) and not WS_Caption);
     Height:=Height - FSizeCaption;
   end;
end;


← →
Skyhawk   (2004-11-30 12:49) [2]

Так не получается, в смысле получается но не так. Я хочу чтобы при наведении допустим на правый нижний угол формы, курсор менялся на двойную стрелочку (ну это ладно) и как всегда зажав левую кнопку изменить размер окна.


← →
KSergey ©   (2004-11-30 12:56) [3]

Обрабатывать WM_NCHITTEST в форме


← →
ssk ©   (2004-11-30 13:07) [4]

>>Skyhawk   (30.11.04 12:49) [2]
Так не получается, в смысле получается но не так. Я хочу чтобы при наведении допустим на правый нижний угол формы, курсор менялся на двойную стрелочку


1. убери bsNone, поставь bsSizeable.
2. код [1] пропиши в OnCreate своей формы:

implementation

{$R *.dfm}

procedure FormWithoutCaption(Form:TForm);
var
FSizeCaption: Integer;
begin
with Form do
  begin
    FSizeCaption := GetSystemMetrics(SM_CYCAPTION);
    SetWindowLong(Handle, GWL_STYLE, GetWindowLong(Handle, GWL_Style) and not WS_Caption);
    Height:=Height - FSizeCaption;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 FormWithoutCaption(Form1);
end;


у меня работает


← →
Думкин ©   (2004-11-30 13:30) [5]

procedure TForm1.CreateParams(var Params: TCreateParams);
begin
    inherited;
    Params.Style := (Params.Style or WS_POPUP) and not WS_CAPTION;
end



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
14-1101224044
Maverick
2004-11-23 18:34
2004.12.12
алгоритмическая задачка


1-1101736096
oxffff
2004-11-29 16:48
2004.12.12
Программирование многопоточности. Мои грабли.


8-1095077561
TiMER
2004-09-13 16:12
2004.12.12
скриншот изменившейся части экрана


1-1101370809
спринт
2004-11-25 11:20
2004.12.12
Стиль XP


14-1101045870
Piter
2004-11-21 17:04
2004.12.12
Зачем делать Set8087CW после вызова WinApi функций?




   Наверх