![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Новый обработчик иконки help окна [D7, WinXP]
Alex © (2008-02-13 09:33:00)Добрый день!
Подскажите пожалуйста начинающему, как сделать свой обработчик для иконки Help формы. При добавлении её в форму она появляется только почему то при выключенной иконке изменения размера окна. (single)
При наведении мыши на иконку нет реакции. Я так понял, что вообще должна происходить загрузка файла winhelp. А мне нужно сделать полностью свой обработчик.
Timofey (2008-02-24 23:47:00) [1]> Как получить клик и обработчик на него попроще?
Например так:
type
THelpForm = class(TForm)
private
procedure WMNCLBUTTONDOWN(var Msg: TWMNCLButtonDown) ; message WM_NCLBUTTONDOWN;
procedure WMNCLBUTTONUP(var Msg: TWMNCLButtonUp) ; message WM_NCLBUTTONUP;
end;
-----
procedure THelpForm.WMNCLBUTTONDOWN(var Msg: TWMNCLButtonDown) ;
begin
if Msg.HitTest = HTHELP then
Msg.Result := 0 // "eat" the message
else
inherited;
end;
procedure THelpForm.WMNCLBUTTONUP(var Msg: TWMNCLButtonUp) ;
begin
if Msg.HitTest = HTHELP then
begin
Msg.Result := 0;
ShowMessage('Need help?') ;
end
else
inherited;
end;
Leonid Troyanovsky (2008-02-15 11:07:00) [2]
> Alex (15.02.08 10:28) [9]
> В общем судя по ответам тема не такаю уж и простая...
Да, да.
Если трудностей не хватает, то мы их создаем.
--
Regards, LVT.
Alex (2008-02-15 10:28:00) [3]В общем судя по ответам тема не такаю уж и простая...
Все, что называлось "не вариант?" в данном случае именно не.
Именно включая XP и поддержку скинов.
Спасибо всем, пока остается лишь предложенный вариант с наследованием...
ketmar (2008-02-14 16:11:00) [4]>[6] Leonid Troyanovsky © (2008-02-14 15:45:00)
не обязательно. можно и поверх стандартного своё наляпать. правда, будут проблемы с темами от XP.
---
Understanding is not required. Only obedience.
Leonid Troyanovsky (2008-02-14 15:54:00) [5]
> Alex (14.02.08 14:33) [4]
> 2. Добавляю иконку (biHelp:=true), иконка появляется на
> форме, но нет клика (анимации нажатия) и нет события.
Я ж приводил уже цитату из хелпа. Не знаю, чего уж там перечитывалось.
Сделать ее работоспособной можно лишь исключив обои -
biMinimize and biMaximize.
> кнопка ну никак не вписывается в концепцию дизайна) решено
> использовать в качестве этой кнопки иконку помощи.
Во-первых, есть клавиша F1.
А во-вторых, можно добавить пункт вызова помощи хоть
в системное меню.
--
Regards, LVT.
Leonid Troyanovsky (2008-02-14 15:45:00) [6]
> ketmar © (14.02.08 14:50) [5]
> нарисовать свою кнопку на caption не вариант?
Если только рисовать свой caption.
--
Regards, LVT.
ketmar (2008-02-14 14:50:00) [7]>[4] Alex (2008-02-14 14:33:00)
нарисовать свою кнопку на caption не вариант?
---
Understanding is not required. Only obedience.
Alex (2008-02-14 14:33:00) [8]Прочитал и решил написать еще раз
1. Есть готовая прога, Нужно добавить еще одно окно под справочную информацию. Чтобы не переделывать весь внешний вид, на который было убито много времени и сил, (А еще одна кнопка ну никак не вписывается в концепцию дизайна) решено использовать в качестве этой кнопки иконку помощи.
2. Добавляю иконку (biHelp:=true), иконка появляется на форме, но нет клика (анимации нажатия) и нет события. Варианты с диалоговым окном не устраивают по ряду причин.
3. Как получить клик и обработчик на него попроще?
Alex (2008-02-14 14:19:00) [9]Ну и где же здесь ответ на мой вопрос?
Меня не интересует организация и постороения помощи в дельфи винде и тп. С этим слава богу все понятно. Мне нужно добавить одну лишнюю иконку на форму-получается. Изображенный на ней вопрос на ней меня устраивает, А окно, которое должно появляться при её клике к помощи не несет никакого отношения.
Причем написал, что нужен bsSingle, а не диалог и тп.
Один из вариантов мне уже рассказали, но это не "начинающих".
Меня интересует, есть ли более простые варианты?
А кто куда идет время покажет...
Anatoly Podgoretsky (2008-02-13 11:32:00) [10]Что такое help окно и help форма
Leonid Troyanovsky (2008-02-13 10:42:00) [11]
> Alex (13.02.08 09:33)
> Подскажите пожалуйста начинающему
Начинающие идут к "Начинающим".
> как сделать свой обработчик для иконки Help формы. При добавлении
> её в форму она появляется только почему то при выключенной
> иконке изменения размера окна. (single)
Как можно делать свою систему помощи, не читая дельфийской:
biHelp If BorderStyle is bsDialog or biMinimize and biMaximize are excluded,
a question mark appears in the form's title bar and when clicked, the cursor
changes to crHelp; otherwise,no question mark appears.
> А мне нужно сделать полностью свой обработчик.
RTFM: Delphi help: TCustomForm.OnHelp
--
Regards, LVT.