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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.08.2008, 18:29   #1
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию Выдвижение формы при наведении

Здравствуйте форумчане..

Вопрос конечно, малость туповат и прост но все же.

Необходимо следующее: при наведении мышки на верхнию часть экрана
(вообщем top = 0 ) должна выдивнутся форма.

Как выдвинуть, задвинуть я знаю. но мне не хотелось бы постояно отслеживать кординаты мыши (это единственный вариант который знаю)
Я видел другой вариант реализованный на этом форуме, только вот к сожалению найти его не могу. (И там форма выдвигалась слева)
Кто знает буду очень благодарен за ссылку.

Так же был бы благодарен если бы ответили как отслеживать мышь вне формы. Либо вообще как реализовать задуманное.

Большое спасибо.

Большое спасибо.
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 21.08.2008, 21:19   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Либо хук ставить либо таймером отслеживать
Код:
var
  P: TPoint; 
  ...
  windows.GetCursorPos(P);
  if P.y = 0 then ...
eoln вне форума Ответить с цитированием
Старый 21.08.2008, 21:42   #3
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Не хочется повторятся но все же: не кто не встречал на этом форуме похожую тему там даже вложение было, только форма там слева выдвигалась?
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 21.08.2008, 22:23   #4
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Вы можете использовать AnimateWindow. Здесь вся информация: AnimateWindow.rar
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 22.08.2008, 07:33   #5
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Цитата:
Сообщение от Terran Посмотреть сообщение
Вы можете использовать AnimateWindow. Здесь вся информация: Вложение 5386
Да знаю я про этот вин анимэйт дело то не в том как выдвигать а в том как узнать что

мышь top=0 не хочется мне постояно следить за кординатами, хотя бы только потому-что,на этом форуме я видел пост с вложением где это проделовылось и кода там на один абзац форма выдвигалась правда слева а не сверху. Там еще компоненты красивые были использованы и все спрашавали откуда автор их взял.... не могу этот топ найти хоть убей....

Может кто видел или помнит? если знаете кинте ссылку пожалуйсто...

Заранее благодарен..
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 22.08.2008, 08:13   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Попробуй вот такой вариант:
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure wml(var v:tagMSG); message CM_MOUSEENTER;
    procedure wme(var v:tagMSG); message CM_MOUSELEAVE;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
Left:=0; Width:=Screen.DesktopWidth;
Height:=100; top:=-Height+2;
end;

procedure TForm1.wme(var v: tagMSG);
begin
   top:=-Height+2;
end;

procedure TForm1.wml(var v: tagMSG);
begin
Top:=0;
end;

end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.08.2008, 22:32   #7
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Stilet, большое вам спасибо, работает как я и хотел только один вопрос почему фокус теряется т.е форма становится не активной после выдвижения?
Я так пробывал:

Код:

procedure TForm1.wml(var v: tagMSG);   
begin
Top:=0;
form1.setfocus;
end;
Но что-то нет изменений....


А так ребят всем спасибо кто отписался....
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 22.08.2008, 23:49   #8
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Цитата:
Сообщение от Stanislav
Не хочется повторятся но все же: не кто не встречал на этом форуме похожую тему там даже вложение было, только форма там слева выдвигалась?
http://www.programmersforum.ru/showthread.php?t=9161
Sibedir вне форума Ответить с цитированием
Старый 23.08.2008, 00:00   #9
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Цитата:
Сообщение от Sibedir Посмотреть сообщение
Большое тебе спасибо... И еще раз респект....
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Старый 23.08.2008, 16:07   #10
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Stilet, а что с фокусом то делать? Или это уже нельзя исправить?
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
получить значение ID при наведении мышкой badfilin JavaScript, Ajax 9 25.04.2009 19:35
Macromedia Dreamweaver закрывается при наведении на пункт меню Xardas Софт 2 04.05.2008 21:39
При наведении на картинку она должна увеличиваться Xander JavaScript, Ajax 1 07.03.2008 18:11
изменение цвета Panel при наведении мыша Kashp Компоненты Delphi 8 08.09.2007 10:18
Изменение вида Image при наведении указателя Сергей А Помощь студентам 3 05.08.2007 15:26