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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.08.2010, 19:25   #1
dmitriegorovih
Ещё не
Форумчанин
 
Аватар для dmitriegorovih
 
Регистрация: 04.01.2010
Сообщений: 517
По умолчанию Примагничивание формы

Всем добрый вечер! У меня такой вопрос как сделать примагничивание формы и если можно, то, как сделать примагничивание объекта к объекту?
Воображение важнее, чем знания. (Albert Einstein)
dmitriegorovih вне форума Ответить с цитированием
Старый 27.08.2010, 19:33   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Поиском "липкие окна"
BOBAH13 вне форума Ответить с цитированием
Старый 27.08.2010, 19:41   #3
ex.cluz
Участник клуба
 
Аватар для ex.cluz
 
Регистрация: 15.01.2010
Сообщений: 1,325
По умолчанию

Недавно выложил тут:
http://www.programmersforum.ru/showthread.php?t=111417
Грибы - они разные. Один тебя накормит, другой тебе кино покажет...
Редактор журнала "
[ПРОграммист]"
Yan's Home Digital Lab
ex.cluz вне форума Ответить с цитированием
Старый 27.08.2010, 19:53   #4
dmitriegorovih
Ещё не
Форумчанин
 
Аватар для dmitriegorovih
 
Регистрация: 04.01.2010
Сообщений: 517
По умолчанию

Цитата:
Сообщение от ex.cluz
Недавно выложил тут:
http://www.programmersforum.ru/showthread.php?t=111417
ex.cluz жутко тормозит и мигает, а нет ли альтернативы?
Воображение важнее, чем знания. (Albert Einstein)
dmitriegorovih вне форума Ответить с цитированием
Старый 27.08.2010, 20:21   #5
ZvEr_HaCkEr
VisualC++/DirectX
Форумчанин
 
Аватар для ZvEr_HaCkEr
 
Регистрация: 16.07.2010
Сообщений: 831
По умолчанию

Код:
procedure TForm4.lipkoeokno(var Msg: TWMWindowPosChanging);
var
  WorkArea: TRect;
  StickAt : Word;
begin
  StickAt := 10;
  SystemParametersInfo(SPI_GETWORKAREA, 0, @WorkArea, 0);
  with WorkArea, Msg.WindowPos^ do
  begin
    Right:=Right-cx;
    Bottom:=Bottom-cy;
    if abs(Left - x) <= StickAt then x := Left;
    if abs(Right - x) <= StickAt then x := Right;
    if abs(Top - y) <= StickAt then y := Top;
    if abs(Bottom - y) <= StickAt then y := Bottom;
  end;
  inherited;
end;
private
Код:
    procedure lipkoeokno(var Msg: TWMWindowPosChanging);  message WM_WINDOWPOSCHANGING;
ZvEr_HaCkEr вне форума Ответить с цитированием
Старый 27.08.2010, 20:29   #6
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

Вот еще один вариант:
Код:
Form1.ScreenSnap:=True;
Form1.SnapBuffer:=15;
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 27.08.2010, 20:31   #7
Nester
Форумчанин
 
Аватар для Nester
 
Регистрация: 22.10.2008
Сообщений: 129
Радость

Когда то экспериментировал на эту тему исходники уже не помню где-надо искать
Вложения
Тип файла: rar Новая папка.rar (162.8 Кб, 21 просмотров)
Никто не знает больше чем не знаю я
Nester вне форума Ответить с цитированием
Старый 27.08.2010, 20:38   #8
ex.cluz
Участник клуба
 
Аватар для ex.cluz
 
Регистрация: 15.01.2010
Сообщений: 1,325
По умолчанию

А сколько контролов на форме?
Кстати, можно DoubleBuffered в true выставить.
Грибы - они разные. Один тебя накормит, другой тебе кино покажет...
Редактор журнала "
[ПРОграммист]"
Yan's Home Digital Lab
ex.cluz вне форума Ответить с цитированием
Старый 27.08.2010, 21:06   #9
dmitriegorovih
Ещё не
Форумчанин
 
Аватар для dmitriegorovih
 
Регистрация: 04.01.2010
Сообщений: 517
По умолчанию

Цитата:
Сообщение от ex.cluz
можно DoubleBuffered в true выставить.
Именно с этим и работал всё также тормозит и мигает
Nester найдите пожалуйста исходники очень нужно как раз то
P.S. А не кто не подскажет как это сделать для визуальных компонентов, а точнее для image(ов)?
Воображение важнее, чем знания. (Albert Einstein)
dmitriegorovih вне форума Ответить с цитированием
Старый 27.08.2010, 21:17   #10
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Цитата:
P.S. А не кто не подскажет как это сделать для визуальных компонентов, а точнее для image(ов)?
Для начала понять логику действий этого самого "прилипания". Далее не будет вопросов как обработать событие этих Images на подобии OnLButtonDown и OnLButtonUp ну и OnMouseMove.
BOBAH13 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Из DBGrid одной формы отразить в ListBox на другой формы VenZell БД в Delphi 2 28.05.2010 07:27
Заголовок Child формы имеет цвет неактивной формы, хотя форма активна? PrimaryPro Общие вопросы Delphi 0 12.03.2010 11:12
как привязать размеры содержимого формы к размерам самой формы acid_bmstu Общие вопросы Delphi 4 05.02.2010 05:02
Как сделать границы формы другого цвета,формы?? Дима я Общие вопросы Delphi 3 22.06.2009 07:24
Обращение из формы в dll к элементу главной формы (delphi) a_n_n_a Помощь студентам 3 10.05.2009 04:00