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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.07.2008, 11:15   #1
Pinya
Пользователь
 
Регистрация: 17.12.2007
Сообщений: 37
По умолчанию Всплывающие подсказки

Всем здравствуйте.
У меня такой вопрос.
Я пользуюсь событием onMouseMove.
И как мне туда добавить окно, которое после появления исчезало бы при нажатии на кнопку мыши в любой части экрана?
Или что-то подобное......
Pinya вне форума Ответить с цитированием
Старый 22.07.2008, 11:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Так подойдет?
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    procedure q(var m:TWMKillFocus);message WM_killFocus;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.q(var m: TWMKillFocus);
begin
 if Form1.Handle<>WindowFromPoint(Mouse.CursorPos) then
 Hide;
end;

end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.07.2008, 11:43   #3
MAKEDON
The First Person!
Форумчанин
 
Аватар для MAKEDON
 
Регистрация: 07.08.2007
Сообщений: 228
По умолчанию

Поясни что ты хочешь? не очень понятно.
Программа обычно делает то что вы ей сказали сделать, а не то что бы вы хотели, чтобы она сделала.
MAKEDON вне форума Ответить с цитированием
Старый 22.07.2008, 12:09   #4
Pinya
Пользователь
 
Регистрация: 17.12.2007
Сообщений: 37
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Так подойдет?
Прикольно.
Конечно лучше бы было, чтоб пропадала по щелчку мыши. Но и так не плохо.

Цитата:
Сообщение от MAKEDON Посмотреть сообщение
Поясни что ты хочешь? не очень понятно.
Я хочу сделать всплывающую подсказку.
Но не могу добиться того, что бы подсказка корректно скрывалась. Вот.
Так попонятнее?
Pinya вне форума Ответить с цитированием
Старый 22.07.2008, 12:49   #5
NikLik
Форумчанин
 
Аватар для NikLik
 
Регистрация: 22.11.2007
Сообщений: 224
По умолчанию

можно к исходнику Stilet'а добавить ещё процедуру
Код:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
//здесь прячешь подсказку
end;
NikLik вне форума Ответить с цитированием
Старый 22.07.2008, 13:54   #6
Pinya
Пользователь
 
Регистрация: 17.12.2007
Сообщений: 37
По умолчанию

Всем спасибо!
Я пришел к выводу что лучшее использование для всплывающих подсказок - это OnMouseDown и OnMouseUp.
Т. е. OnMouseDown - открываетя окно, а на OnMouseDown - закрывается.
Pinya вне форума Ответить с цитированием
Старый 22.07.2008, 14:34   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
а на OnMouseDown - закрывается.
Тогда теряется твоя идея клика вне окна.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.07.2008, 14:37   #8
NikLik
Форумчанин
 
Аватар для NikLik
 
Регистрация: 22.11.2007
Сообщений: 224
По умолчанию

А не проще ли сделать всё по таймеру?
Наводишь мышь на элемент(например, edit1.onmousemove)--появляется подсказка и включается таймер, в OnTimer--закрытие подсказки
NikLik вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
всплывающие подсказки для каждой строки CListBox! mahsus Общие вопросы .NET 0 01.04.2008 08:41
Всплывающие меню в Excel bibikin_the_1st Microsoft Office Excel 1 18.12.2007 05:06
Подсказки Demien Общие вопросы Delphi 5 15.11.2007 16:51
Всплывающие предупреждения об ошибках valerij Microsoft Office Excel 2 25.10.2007 00:32
Подсказки Windows celovec Общие вопросы Delphi 1 01.07.2007 07:29