Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.05;
Скачать: CL | DM;

Вниз

форма   Найти похожие ветки 

 
race1   (2004-08-18 05:43) [0]

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

иначе придётся пихать панели к всем сторонам формы, делать у них соответствующий курсор и изменять размеры формы через панели


 
Dyn`alt ©   (2004-08-18 06:40) [1]

Нужно переопределить метод CreateParams формы и в нем выставить нужные стили окна


 
Юрий Зотов ©   (2004-08-18 06:50) [2]

Выставляем BorderStyle = bsNone и замещаем CreateWnd:


type
 TForm1 = class(TForm)
 ...
 protected
   procedure CreateWnd; override;
 ...
 end;

procedure TForm1.CreateWnd;
begin
 inherited;
 SetWindowLong(Handle, GWL_STYLE,
   GetWindowLong(Handle, GWL_STYLE) or WS_THICKFRAME)
end;


 
Dyn`alt ©   (2004-08-18 07:19) [3]

Это тоже сработает:

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


 
race1   (2004-08-18 07:27) [4]

спасибо всем! не думал что это так просто :)


 
Юрий Зотов ©   (2004-08-18 07:59) [5]

> race1   (18.08.04 07:27) [4]

Очень советую посмотреть справку API по функциям RegisterClass, RegisterClassEx, CreateWindow и CreateWindowEx, а также по структуре CREATESTRUCT. Кроме прочего, там описаны стили классов окон и самих окон, что они делают и на что влияют. Найдете немало интересного (в том числе, и для таких окон, как кнопки, комбобоксы и пр.).

Пояснение.

При создании окон VCL использует RegisterClassEx и CreateWindowEx. Переопределить стили на нужные можно как ДО создания окна, так и ПОСЛЕ его создания. До создания окна это делается замещением метода CreateParams (Params.WindowClass.Style - стили класса окна, Params.Style - стили окна, Params.ExStyle - расширенные стили окна), а после создания окна - вызовом SetClassLong (стили класса окна) и/или SetWindowLong (стили окна и расширенные стили окна). Кроме стилей, CreateParams, SetClassLong и SetWindowLong позволяют перепределить и некоторые другие параметры окна (иконку, кисть и пр.).



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

Текущий архив: 2004.09.05;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.042 c
1-1093082083
Mox Fulder
2004-08-21 13:54
2004.09.05
Скрыть форму


1-1092808741
Roadstar
2004-08-18 09:59
2004.09.05
TTreeView


1-1092836413
Ivolg
2004-08-18 17:40
2004.09.05
БалоН


14-1092497140
Vasya.ru
2004-08-14 19:25
2004.09.05
комп самопроизвольно включается


8-1087329667
Davids
2004-06-16 00:01
2004.09.05
из FPT в BMP or JPG