Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Hint в Delphi 6

Ответить
Настройки темы
Delphi - Hint в Delphi 6

Пользователь


Сообщения: 77
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Подскажите пожалуйста, как можно программно вызвать появление подсказки для определённого компонента?

Заранее благодарен.

-------
WelcomE to http://www.unfat.flip.ru


Отправлено: 13:51, 14-03-2004

 

Аватара для [mzd]

Линуксоид-стакановец


Сообщения: 2391
Благодарности: 186

Профиль | Отправить PM | Цитировать


В инспекторе объектов у каждого визуального компнента есть такая строчка Hint. Туда и прописываешь, что тебе надо. А чуть ниже есть ShowHint. Его устанавливаешь в True. Или просто пишешь в FormCreate
Код: Выделить весь код
Button1.Hint:='Подсказка';
Button1.ShowHint:=true;

[s]Исправлено: [mzd], 14:08 14-03-2004[/s]

-------
Живя в реальном мире, стремись к невероятному... Эрнесто Че Гевара
Everybody lies. (c) House M.D.
Базовая настройка Ubuntu. Документация для новичка.
Руководство по установке, начальной настройке и основам использования операционной системы Ubuntu


Отправлено: 14:06, 14-03-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 77
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Нет, это-то я знаю.
Я хочу чтоб подсказка появлялась не при наводе мышкой на компонент, а по событию.

Например.

Я печатаю в Едите а в это время выскакивает подсказка о том, что печатать, т.е. без мышки.

-------
WelcomE to http://www.unfat.flip.ru


Отправлено: 16:25, 14-03-2004 | #3


Аватара для hasherfrog

Старый параноик


Сообщения: 2423
Благодарности: 85

Профиль | Отправить PM | Цитировать


ЕМНИП, подсказка появляется после вызова метода OnHint. Форсируй его вызов и все. Только если ты показываешь, что печатать, у пользователя возникает искушение не печатать, а показать мышкой в подсказку. А это немного другая песня, ИМХО.

Отправлено: 10:17, 15-03-2004 | #4


Пользователь


Сообщения: 77
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


hasherfrog я пытался вызвать onHint для LabeledEdit, но ничего не выходит.  Пишет "неопознаный индетификатор". Что можете посоветовать?

-------
WelcomE to http://www.unfat.flip.ru


Отправлено: 21:14, 24-03-2004 | #5



Сообщения: 196
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


LedWorm

Код: Выделить весь код
public
  { Public declarations }
  h: THintWindow;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if h<>nil then
    H.ReleaseHandle;
  H:=THintWindow.Create(Form1);
  H.ActivateHint(Form1.ClientRect, 'Это всплывающая подсказка');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  if h<>nil then
    H.ReleaseHandle;
end;

Отправлено: 08:38, 25-03-2004 | #6


Пользователь


Сообщения: 77
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Kuper
Спасибо, буду пробовать


Добавлено:

Kuper

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

Может кто-нить ещё знает как это сделать?

-------
WelcomE to http://www.unfat.flip.ru


Отправлено: 13:28, 25-03-2004 | #7


Аватара для Vich

admin


Сообщения: 1450
Благодарности: 7

Профиль | Отправить PM | Цитировать


тебе не нравится как выглядит окошко хинта? перепиши тогда класс ThintWindow.
Цитата:
вообще эффект не тот
а какой эффект нужен?

Отправлено: 14:38, 25-03-2004 | #8


Аватара для hasherfrog

Старый параноик


Сообщения: 2423
Благодарности: 85

Профиль | Отправить PM | Цитировать


Цитата:
...вызвать подсказку, как делает это Делфи, когда пишеш процедуру...
LedWorm
Я ж говорю, другая песня
Поскольку я скоро сам что-то подобное буду писать, вот несколько мыслей:
1) Создание и удаление подсказки как VCL-объекта (а также модификация его содержимого  в зависимости от действий пользователя) производиться в классе-родителе (в простейшем случае TMemo - у меня QTextEdit). Родитель должен определить где показывать и что показывать. Кроме того, он обязан закрыть подсказку , если сам потеряет фокус. Родитель должен уметь передать фокус в подсказку при нажатии определенных клавиш типа вверх/вниз.
2) Само окно-подсказка - немодальное попап-окно, показываемое по show(). Имплементейшн класса подсказки должен уметь сообщить родителю о том что его закрыли выбором элемента списка. У Вас, вероятно это будет посредством callback, у меня в QT - через сигналы/слоты.
3) Для упрощения/ускорения процесса написания класса можно в качестве основы взять существующий класс подсказки. Но я, скорее всего, буду делать по-другому (QFrame).
Вот вкратце и все, собственно. Для меня большей проблемой является определение содержимого подсказки.

[s]Исправлено: hasherfrog, 14:48 25-03-2004[/s]

Отправлено: 14:39, 25-03-2004 | #9



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Hint в Delphi 6

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - hint при при наведении указателя на имя файла в Проводнике - как ОС ищет инф? bvn123 Microsoft Windows 2000/XP 1 01-02-2008 01:10
Win32 API | Hint в StatusBar Ryjka Программирование и базы данных 2 30-07-2006 22:17
Delphi - Delphi | UpperCase на Delphi 7 Cognolio Программирование и базы данных 3 26-01-2006 15:42
Hint'ы к темам... Zippy О сайте и форуме 2 20-04-2004 09:59
Delphi - delphi PL Программирование и базы данных 4 23-10-2002 15:16




 
Переход