Вниз
Скачать: 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
14-72512
ZiLot
2003-01-06 08:46
2003.01.23
InstallShield & BDE


1-72289
shok
2003-01-15 09:34
2003.01.23
password


1-72307
don_dampster
2003-01-15 15:44
2003.01.23
Копия файла


1-72366
БурЖуй
2003-01-10 23:53
2003.01.23
TDateTimePicker - добавление фона на заданые числа


3-72138
Mic_2000
2003-01-03 10:32
2003.01.23
Вопрос по IBQuery и IBUpdateSQL




   Наверх