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

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

 
Петр ©   (2003-01-14 09:04) [0]

Здравствуйте.

Знаю, что есть свойство у формы posScreeenCenter, которое позволяет вывести форму (или МеssageBox) в центре экрана, а как мне сделать так, чтобы модальная форма или окно диалога, которую я вывожу была центрирована относительно главной формы или любой другой формы.

В частости, интересует,как вывести окно диалога (Вызванное именно методом Application.MessageBox) по центру, относительно главной формы.

Есть, какие-нибудь API функции или мне вручную координаты просчитывать?


Решение Position:= poMainFormCenter, Position:= poOwnerFormCenter
не работает.

Форма, которую я вызываю, все равно появляется в центре экрана и не позиционируется относительно главной формы. Может быть данное решение работает если формы вручную создавать или когда приложение MDI?


Спасибо.


Position:= poMainFormCenter

или

Position:= poOwnerFormCenter


 
A2   (2003-01-14 09:24) [1]

procedure AdjustForm(Form : TForm);
var
WorkArea : TRect;
begin
SystemParametersInfo(SPI_GETWORKAREA, 0, @WorkArea, 0);
Form.Left := WorkArea.Left;
Form.Top := WorkArea.Top;
Form.Width := WorkArea.Right - WorkArea.Left;
Form.Height := WorkArea.Bottom - WorkArea.Top;
end;
//...
procedure TMainForm.FormCreate(Sender : TObject);
begin
AdjustForm(Self);
//...
end;


 
A2   (2003-01-14 09:27) [2]

Дополнение к предыдущему: Form.Position должно быть poDesigned.



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

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



Память: 0.45 MB
Время: 0.011 c
1-72383
Mentos
2003-01-13 13:31
2003.01.23
линк между RTF-файлом и Дельфийской формой


14-72512
ZiLot
2003-01-06 08:46
2003.01.23
InstallShield & BDE


7-72568
zsv
2002-11-13 05:26
2003.01.23
Как узнать версию Windows


14-72529
Cobalt
2003-01-07 02:08
2003.01.23
Вот такие у нас опечатки ;-)


14-72505
gorv
2003-01-06 19:22
2003.01.23
DELHI + POCKET STUDIO (PALM)




   Наверх