Главная страница
    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.019 c
4-1129834665
aha
2005-10-20 22:57
2005.12.18
Имею ик порт Tecram-210 и небольшой опыт работы через ком


2-1133539320
Максим
2005-12-02 19:02
2005.12.18
Дали 3 упражнения связанные со строкой Edit


6-1117730133
Дмитрий_05
2005-06-02 20:35
2005.12.18
Свой браузер-чат


1-1132828478
Дмитрий_05
2005-11-24 13:34
2005.12.18
Заменить запущенную библиотеку


14-1132835209
ArtemESC
2005-11-24 15:26
2005.12.18
Потерял статью...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский