Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.05.2013, 15:42   #1
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию Перерасчет координат объектов

Здравствуйте, на форме есть несколько объектов, при развертывании ее на весь экран объекты смещаются, я создал обработчик, но думаю что писать столько кода глупо и громоздко, как можно написать проще?

Код:
procedure TForm1.EffectButton1Click(Sender: TObject);
begin
 if Form1.WindowState<>wsMaximized then
 begin
 Form1.WindowState:=wsMaximized;
 effectbutton2.left:=statictext2.width-53;
 effectbutton1.left:=effectbutton2.left-60;
 image1.top:=(form1.height div 2)-image1.height;
 image2.top:=(form1.height div 2)-image2.height;
 image3.top:=(form1.height div 2)-image3.height;
 radiobutton1.left:=image1.left;
 radiobutton1.top:=(form1.height div 2)-radiobutton1.height;
 radiobutton2.top:=(form1.height div 2)-radiobutton2.height;
 radiobutton3.top:=(form1.height div 2)-radiobutton3.height;
 button1.top:= radiobutton3.top+button1.height;
 image1.left:=statictext1.Left;
  image2.left:=(statictext1.width div 2)-(image2.width div 2);
   image3.left:=statictext1.Width-image3.width;
  end
  else
  begin
  Form1.WindowState:=wsnormal;
  form1.Height:= 564;
  form1.Width:=1157;
  effectbutton2.left:=1088;
  effectbutton1.left:=1028;
  image1.top:=119;
  image2.top:=119;
  image3.top:=119;
  radiobutton1.top:=373;
  radiobutton2.top:=373;
  radiobutton3.top:=373;
  button1.top:= 456;
  image1.left:=34;
  image2.left:=321;
  image3.left:=617;
  end
end;
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 10.05.2013, 15:46   #2
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

настрой правильно свойство Anchors у компонентов и они будут правильно рисоваться
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 10.05.2013, 15:48   #3
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

а если без анкорс?
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 10.05.2013, 15:49   #4
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

тогда мучайся дальше)
а настроить Anchors религия не позволяет или как?
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 10.05.2013, 15:50   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
а если без анкорс?
А если разрешение экрана другое и/или размер шрифта - ваши константы коту под хвост
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 10.05.2013, 16:07   #6
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

анкорс настроил, но надо чтобы при увеличении форму картинки увеличивались, а кнопка было под картинками, вот код сократил
Код:
procedure TForm1.EffectButton1Click(Sender: TObject);
begin
 if Form1.WindowState<>wsMaximized then
 Form1.WindowState:=wsMaximized else Form1.WindowState:=wsnormal;
   effectbutton2.left:=statictext2.width-53;
 effectbutton1.left:=effectbutton2.left-60;
end;
from dark to light)

Последний раз редактировалось Алексей_2012; 10.05.2013 в 16:11.
Алексей_2012 вне форума Ответить с цитированием
Старый 10.05.2013, 16:12   #7
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

Цитата:
но надо чтобы при увеличении форму картинки увеличивались, а кнопка было под картинками
читай пост №2
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 10.05.2013, 16:14   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
картинки увеличивались
Для картинок можно указать свойство Stretch в true. тогда изображение будет само растягиваться.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.05.2013, 16:21   #9
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Цитата:
Stretch в true
у меня итак это есть (пишу тест из картинок) в общем анкорс на bottom у картинок ставлю, а они растягиваются на больше чем нужно, так что наверное придется в обработчике ширину и высоту ставить статическую
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 10.05.2013, 16:30   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
они растягиваются на больше чем нужно
Я обычно выставляю align и autosize для компонентов, и выравниваю их панелями на форме.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление своих объектов в Добавление своих объектов в двунаправленный кольцевой список voidmain C# (си шарп) 3 21.03.2013 13:08
Преобразование координат. Vegas Помощь студентам 15 17.12.2011 20:29
Создание и уничтожение объектов. Время жизни объектов C++/C# Anett// Помощь студентам 0 24.10.2011 23:26
упорядоченность координат homereader Помощь студентам 4 03.06.2011 14:16
Сортировка координат Sparky Помощь студентам 9 08.10.2009 16:31