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

Форму в нижний правый угол   Найти похожие ветки 

 
Developerr ©   (2005-12-04 20:56) [0]

Доброгое время суток!
Ув. мастера, подскажите, пожалуйста,

как сделать чтобы форма открывалась всегда в нижнем правом углу десктопа независимо от размеров формы и разрешения экрана?

Спасибо.


 
Palladin ©   (2005-12-04 21:17) [1]

Есть глобальная переменная Screen:TScreen (надеюсь в D7 она осталась)
Назначаешь форме
Top:=Screen.Height-Selft.Height-3;
Left:=Screen.Width-Selft.Width-3;


 
Virgo_Style ©   (2005-12-04 21:20) [2]

Top  := Screen.Height - Height;
Left := Screen.Width  - Width;


 
begin...end ©   (2005-12-04 21:23) [3]

procedure TForm1.FormCreate(Sender: TObject);
begin
 with (Sender as TControl) do
 begin
   Top := Screen.WorkAreaHeight - Height;
   Left := Screen.WorkAreaWidth - Width;
 end
end


 
begin...end ©   (2005-12-04 21:25) [4]

Ой, сорри... [3] следует читать так:

procedure TForm1.FormCreate(Sender: TObject);
begin
  Top := Screen.WorkAreaHeight - Height;
  Left := Screen.WorkAreaWidth - Width;
end

Совсем крыша поехала...


 
Developerr ©   (2005-12-04 21:26) [5]

Спасибо всем огромное


 
Developerr ©   (2005-12-04 21:29) [6]

begin...end ©

Твой вариант самый рульный. И [3] и [4] работает.
Спасибо.


 
Saimon   (2005-12-05 11:28) [7]


> begin...end ©   (04.12.05 21:25) [4]


Вариант отличный, пользуюсь давно им.
Но порекомендовал-бы этот код пихать в OnActive той формы, которую надо по правому-нижнему краю ровнять.

В чем фишка??
А если ты форму используешь несколько раз??? Т.е. это не главная форма?
Тогда OnCreate сработает только один раз! А OnActive будет работать всегда.


 
Anatoly Podgoretsky ©   (2005-12-05 11:54) [8]

Saimon   (05.12.05 11:28) [7]
Ни в коем случае, зачем нужна форма, которая будет прыгать обратно после перемещения и срабатывания OnActivATe.
Использование формы измеряется не в разах, а в интервале.


 
Fay ©   (2005-12-05 12:23) [9]

2 begin...end ©   (04.12.05 21:25) [4]
> Совсем крыша поехала...
А что не так?


 
begin...end ©   (2005-12-05 12:29) [10]

> Fay ©   (05.12.05 12:23) [9]

Не так вот что: незачем усложнять код и использовать Sender, когда в методе того же объекта находимся.


 
Saimon   (2005-12-05 15:21) [11]


> Anatoly Podgoretsky ©   (05.12.05 11:54) [8]


Вы меня не совсем правильно поняли.
Это чтобы при открытии формы (т.е. типа "Visible:= true" когда ставится, проще говоря когда она появляется на экране) она ставала в правый-нижний угол. А когда форма теряет фокус, а потом снова его получает (без закрытия) OnActive не срабатывает, поэтому это будет действовать только при открытии. Лично у меня в дельфи 6 и 7 OnActive работает так... Или такого быть не должно??

Например, я часто использую в OnActive код центрирования формы относительно  родительской, для форм "Options" и "About...". Может быть я в чем-то не прав, но это мое мнение...


 
Fay ©   (2005-12-05 15:40) [12]

2 begin...end ©   (05.12.05 12:29) [10]
А если есть желание использовать для других объектов? 8)



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

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



Память: 0.48 MB
Время: 0.024 c
2-1133175211
LionMen
2005-11-28 13:53
2005.12.18
Расшифровка файла


6-1126253760
mandarin
2005-09-09 12:16
2005.12.18
подскажите как подсоиденится к ftp серверу через прокси (http pro


2-1133639328
Progger
2005-12-03 22:48
2005.12.18
Как спрятать пароли в программе?


2-1133604782
ALex2
2005-12-03 13:13
2005.12.18
Приложение


2-1133767191
Nemiroff
2005-12-05 10:19
2005.12.18
Позиция окна при разворачивании




   Наверх