IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Движение форм
сообщение
Сообщение #1


Я.
****

Группа: Пользователи
Сообщений: 809
Пол: Мужской
Реальное имя: Саша

Репутация: -  11  +


Как осуществить передвижение второй формы, когда перемещается 1я?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






blink.gif Это смотря, как должна перемешаться вторая форма, и как она вообще связана с первой. Нужно больше информации, чтоб ответить на вопрос.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Я.
****

Группа: Пользователи
Сообщений: 809
Пол: Мужской
Реальное имя: Саша

Репутация: -  11  +


Цитата(volvo @ 15.11.2009 19:19) *

blink.gif Это смотря, как должна перемешаться вторая форма, и как она вообще связана с первой. Нужно больше информации, чтоб ответить на вопрос.

Это все та же программа про стеклышки. Необходимо чтобы при перемещении формы1(главной) все остальные формы(стеклышки) перемещались вместе с ней.
не нашел такого события
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






OnMouseDown (для определения начала перемещения) + OnMouseMove (сам процесс перемещения) + OnMouseUp (окончание перемещения формы). Это все при условии, что первую форму перетаскивает пользователь. Ты ж молчишь, я не телепат, знать, что ты там себе задумал. Нужна помощь - давай ИНФОРМАЦИЮ, а не ее обрывки.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Я.
****

Группа: Пользователи
Сообщений: 809
Пол: Мужской
Реальное имя: Саша

Репутация: -  11  +


Цитата(volvo @ 15.11.2009 20:02) *

OnMouseDown (для определения начала перемещения) + OnMouseMove (сам процесс перемещения) + OnMouseUp (окончание перемещения формы).

Оно так получится? я думал что так можно только для компонентов..


Добавлено через 3 мин.
и в таком случае форму можна будет перетаскивать нажатием на любое ее место


Добавлено через 9 мин.
сделать хочу так, чтобы перемещать можно было за верхнюю штуку, где написано Form1

Добавлено через 4 мин.
т.е. чтобы формы 2,3,4 были как бы компонентами 1й
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Ну, попробуй тогда вот так изменить класс первой формы:

type
TForm1 = class(TForm)
// ...
private
px, py: integer;
started: boolean;
procedure OnMove(var aMsg:TWMMove);message WM_MOVE;
end;

procedure TForm1.OnMove(var aMsg:TWMMove);
begin
if started then
begin
form2.Left := form2.Left + (form1.Left - px);
form2.top := form2.top + (form1.top - py);
form3.Left := form3.Left + (form1.Left - px);
form3.top := form3.top + (form1.top - py);
form4.Left := form4.Left + (form1.Left - px);
form4.top := form4.top + (form1.top - py);

px := Form1.Left; py := Form1.Top;
end;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
form2.Left:=(form1.Panel1.Width div 2) - (form2.Width div 2)+form1.Left;
form2.top:=(form1.Panel1.height div 2) - (form2.height div 2)+form1.Top;
px := Form1.Left; py := Form1.Top; // добавляем эти 2 строки
started := true;
end;
Тебе этого хотелось что-ли?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Я.
****

Группа: Пользователи
Сообщений: 809
Пол: Мужской
Реальное имя: Саша

Репутация: -  11  +


Цитата(volvo @ 16.11.2009 0:06) *
Тебе этого хотелось что-ли?

Оно самое! Спасибо!!! good.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 12:59
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name