Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.04.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.009 c
14-19764
race1
2003-03-22 12:42
2003.04.07
draw


3-19506
OleGKu
2003-03-19 15:48
2003.04.07
MSSQL & Delphi


3-19511
navuhodonosr
2003-03-20 11:57
2003.04.07
Поиск в базе данных


14-19848
Я
2003-03-21 10:00
2003.04.07
Программирование


1-19592
ewgeny
2003-03-27 10:41
2003.04.07
указатель на структуру





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