|
Вопрос # 5 599/ вопрос закрыт / |
|
Доброго времени суток, уважаемые эксперты!
У меня есть форма и на середине формы стоит 4 кнопки speedbutton. Теперь как можно сделать так чтобы при разных разрешениях экрана все эти 4 кнопки оставались на середине формы? Пробовал через Anchors но нечего не получилось. Заранее большое всем спасибо!!!
 |
Вопрос задал: Ермаханов Айбек (статус: Посетитель)
Вопрос отправлен: 26 августа 2011, 15:52
Состояние вопроса: закрыт, ответов: 2.
|
Ответ #1. Отвечает эксперт: ierihon1
Здравствуйте, Ермаханов Айбек!Что то наподобии мне пришлось делать на информатике но на VB с переносом на делфи проблем не оказалось.
Во первых нужно задать положение кнопок в момент создания формы:
procedure TForm2.FormCreate(Sender: TObject);
begin
SpeedButton1.Left := Form2.ClientWidth div 2 - SpeedButton1.Width;
SpeedButton1.Top := Form2.ClientHeight div 2 - SpeedButton1.Height;
SpeedButton2.Left := Form2.ClientWidth div 2;
SpeedButton2.Top := Form2.ClientHeight div 2 - SpeedButton2.Height;
SpeedButton3.Left := Form2.ClientWidth div 2 - SpeedButton3.Width;
SpeedButton3.Top := Form2.ClientHeight div 2;
SpeedButton4.Left := Form2.ClientWidth div 2;
SpeedButton4.Top := Form2.ClientHeight div 2;
end;
Так же нужно это выполнять при изменении размеров окна для этого существует событие формы OnResize
procedure TForm2.FormResize(Sender: TObject);
begin
SpeedButton1.Left := Form2.ClientWidth div 2 - SpeedButton1.Width;
SpeedButton1.Top := Form2.ClientHeight div 2 - SpeedButton1.Height;
SpeedButton2.Left := Form2.ClientWidth div 2;
SpeedButton2.Top := Form2.ClientHeight div 2 - SpeedButton2.Height;
SpeedButton3.Left := Form2.ClientWidth div 2 - SpeedButton3.Width;
SpeedButton3.Top := Form2.ClientHeight div 2;
SpeedButton4.Left := Form2.ClientWidth div 2;
SpeedButton4.Top := Form2.ClientHeight div 2;
end;
 |
Ответ отправил: ierihon1 (статус: 1-ый класс)
Время отправки: 27 августа 2011, 08:26
Оценка за ответ: 5
Комментарий к оценке: Спасибо большое!
|
Ответ #2. Отвечает эксперт: DNK
Здравствуйте, Ермаханов Айбек!
Сделай небольшую Panel с невидимыми границами, помести в середине и отвяжи от всех границ. На неё помести нужные кнопки.
Пример dfm-файла.
 |
Ответ отправил: DNK (статус: Студент)
Время отправки: 28 августа 2011, 17:40
Оценка за ответ: 5
Комментарий к оценке: Спасибо большое!
|
Мини-форум вопроса
Всего сообщений: 3; последнее сообщение — 27 августа 2011, 01:07; участников в обсуждении: 2.
|
DNK (статус: Студент), 26 августа 2011, 16:08 [#1]:
Сделай небольшую Panel с невидимыми границами, помести в середине и отвяжи от всех границ. На неё помести нужные кнопки.
"Digital Networked Knight"
|
|
Ермаханов Айбек (статус: Посетитель), 26 августа 2011, 16:21 [#2]:
DNK: Все равно вместе с панелью выдвигается чуть слева и наверх.
Какие параметры нужно установить в anchors Panel-а. Подскажи пожалуйста.
|
26 августа 2011, 19:36: Вопрос перемещён из тематического раздела Delphi » Общие вопросы по программированию в раздел Delphi » Работа с компонентами и библиотеками модератором Ерёмин А.А.
|
DNK (статус: Студент), 27 августа 2011, 01:07 [#3]:
Пример здесь.
"Digital Networked Knight"
|
29 августа 2011, 07:16: Вопрос закрыт (решение принял автор вопроса — Ермаханов Айбек): Спасибо всем!
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|