|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.02.2013, 10:42 | #1 |
Пользователь
Регистрация: 13.04.2010
Сообщений: 16
|
Хинты-подсказки (balloons)
Добрый день.
Пытаюсь реализовать показ хинтов-подсказок (balloons). Показывать (в определенном месте) и скрывать хинт я должен самостоятельно (например при нажатии кнопки F1 показывать, при отпускании F1 - скрывать). При поиске в интернете видел много вариантов, но что-то 100% подходящего не нашел (сразу оговорюсь использовать сторонние компоненты не хочу), поэтому "химичил" сам. Вот что я имею на данный момент (код вполне рабочий, но в рамках одной формы). Код:
На форме Frm1Main (это главная форма) несколько Edit-ов и у каждой стоит обработчик нажатия/отпускания F1. Все работает как надо - хинт показывается и скрывается. Но если я пытаюсь вызвать процедуру ShowTooltip из другого Edit-а другой формы, то хинт показывается (причем как бы дергается) на главной форме. Вопрос: Что изменить в коде чтобы показывался в тех формах откуда вызываю? |
07.02.2013, 11:35 | #2 |
Форумчанин
Регистрация: 27.11.2012
Сообщений: 190
|
Сделать наследника TForm, где реализовать показ баллонов, и все формы проекта наследовать от этого наследника
|
07.02.2013, 12:13 | #3 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,888
|
Добавить параметр форму, во всех соотв. местах
Код:
Код:
|
07.02.2013, 13:36 | #4 |
instagram
Участник клуба
Регистрация: 24.05.2008
Сообщений: 1,451
|
в этом паке есть BallonHint
|
07.02.2013, 13:50 | #5 |
Пользователь
Регистрация: 13.04.2010
Сообщений: 16
|
phomm, ваш метод отлично работает! Но только осталось дергание хинта (появляется, исчезает и снова появляется уже нормально) когда вызываю из другой формы... видимо где-то происходит HideTooltip... но уже супер!
PS. сейчас посмотрел внимательнее - при удержании кнопки F1 хинт мерцает. PPS. Проблема полностью решена. Мерцания больше нет! Всем спасибо. Последний раз редактировалось Rusland; 07.02.2013 в 17:00. |
08.02.2013, 12:06 | #6 |
Пользователь
Регистрация: 13.04.2010
Сообщений: 16
|
В продолжение темы.
Решил я добавить в balloon кнопку закрытия. Для этого в процедуру создания добавил "or $80" Код:
Но вот после того как ее нажимаешь, то повторный вызов хинт не работает. Чтобы он снова сработал надо вызвать процедуру HideToolTip, тогда все снова работает. Как можно определить нажатие кнопки крестика, чтобы самому вызвать HideToolTip? То есть как написать обработчик события нажатия кнопки Закрытия? |
12.02.2013, 14:59 | #7 |
Пользователь
Регистрация: 13.04.2010
Сообщений: 16
|
Еще вопрос:
Как установить автоматическое скрытие тултипа? (например через 3 секунды) Я пробовал добавлять Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подсказки | alexey_kip | Visual C++ | 1 | 15.04.2012 13:25 |
Подсказки и хинты в Microsoft Visual Studio 2010 rus | Max1548 | Visual C++ | 11 | 23.11.2011 23:13 |
Подсказки к картинкам | L_M | HTML и CSS | 2 | 21.10.2009 23:13 |
Eclipse и подсказки | LAGOX | PHP | 0 | 30.06.2009 23:10 |
Подсказки | Demien | Общие вопросы Delphi | 5 | 15.11.2007 16:51 |