Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.07;
Скачать: CL | DM;

Вниз

Прилипание   Найти похожие ветки 

 
Opera ©   (2003-03-22 02:03) [0]

Хой мастера.
Помогите плиз.
Как сделать чтобы форма в программе клеилась к 2 форме.
Также как в Winamp"e.
Помогите с кодом!


 
IceDog   (2003-03-22 04:15) [1]

Не знаю как правильно, но я делал так.
Поставил основную форму, к ней в нужном месте установил дополнительную. Посмотрел их координаты. Высчитал разницу этих координат. Записал на кнопку. Чтобы можно было двигать основную форму с прилипшей к ней дополнительной установил таймер, который через небольшие промежутки (минимально возможные) проверял этот код и соответственно корректировал установку.


 
OxOTHuK   (2003-03-22 09:02) [2]

В разделе статьи все есть... так что потрудитесь заглянуть туда прежде чем вопросы на форуме оставлять. Если выши поиски не увенчаются успехом то оставляйте мыло и я вам ее вышлю....
всего хорошего


 
Tano ©   (2003-03-22 21:18) [3]

Я сделал так.
В TForm1 добавил обработчики сообщений о перемещении/масштабировании:

procedure ON_FormMove(var Message: TMessage); message M_MOVE;
procedure ON_FormSize(var Message: TMessage); message M_SIZE;

Собственно обработчики:

procedure TForm1.ON_FormMove(var Message: TMessage);
var
P0, P :TPoint;
begin
if not StartUp then
begin
Message.Result:=0;
P0.X:=0; P0.Y:=0;
P:=ClientToScreen(P0);
Form2.Top:=P.Y;
Form2.Left:=Left+Width;
end;
end;

procedure TForm1.ON_FormSize(var Message: TMessage);
begin
if not StartUp then
begin
Message.Result:=0;
Form2.Height:=ClientHeight+2;
end;
end;

Соответственно Form2 прилипает справа и ее высота меняется как у Form1.
StartUp - глобальная Boolean, которая True, пока не завершиться инициализация всего приложения (создание форм, в частности), иначе у меня вылетало. Типа хотел переместить то, чего нет.

Используя этот метод можно сфантазировать любую привязку.


 
Palladin ©   (2003-03-22 22:47) [4]


> Tano © (22.03.03 21:18)

достаточно проверять свойство Visible у формы


 
dim- ©   (2003-03-23 00:23) [5]

а можно сделать чтобы прилипала к любому окну, не только моей программы?


 
Zakky   (2003-03-24 11:57) [6]

Посмотри статью http://www.proglib.ru/articles/art0000050.asp


 
Opera ©   (2003-03-25 13:40) [7]

OxOTHuK ничего в статьях я не нашел! Мой майл: diks_@mail.ru
Tano немного фиговато получается прилипание.
Может еще поможет кто чем сможет?


 
Palladin ©   (2003-03-25 13:49) [8]


> Opera © (25.03.03 13:40)

подумай немного над Tano © (22.03.03 21:18)


 
Opera ©   (2003-03-25 16:44) [9]

Код Nano не работает.


 
Palladin ©   (2003-03-25 17:09) [10]


> Opera © (25.03.03 16:44)

я же не сказал "скопируй его", я сказал "подумай над ним", и как его можно использовать в применении к твоей задаче...



Страницы: 1 вся ветка

Текущий архив: 2003.04.07;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.012 c
1-19609
MadCaT
2003-03-25 08:26
2003.04.07
Список контактов


14-19833
wasilla
2003-03-20 13:04
2003.04.07
WinXp


3-19467
Ик сик
2003-03-17 15:59
2003.04.07
Увеличение затрат ОП при использовании ADO


14-19840
StarCon
2003-03-19 11:10
2003.04.07
Wise Install Master


1-19569
isma
2003-03-25 09:34
2003.04.07
ListView-вопрос?