Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.016 c
3-1130748382
Sanich
2005-10-31 11:46
2005.12.18
Проблема спередачей параметров в функцию.


5-1116963546
w666w
2005-05-24 23:39
2005.12.18
Как в TListItem отрисовать TSpinEdit?


9-1122150518
Иггорь
2005-07-24 00:28
2005.12.18
Как сделать точный таймер?


2-1133754766
Veter
2005-12-05 06:52
2005.12.18
Как можно получить текст с поля Edit другой программы


10-1109505053
Port 111
2005-02-27 14:50
2005.12.18
Работа с Word по шаблонам





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский