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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2019, 18:29   #1
kraw2
Пользователь
 
Регистрация: 19.02.2008
Сообщений: 24
По умолчанию Компонент TsMonthCalendar AlphaControls

Здравствуйте.
Как в данном компоненте отловить нажатие клавиши, например Enter.
Событий связанных с нажатием клавиши в нем нет. Благодарю.
kraw2 вне форума Ответить с цитированием
Старый 17.03.2019, 05:22   #2
beegl
instagram
Участник клуба
 
Аватар для beegl
 
Регистрация: 24.05.2008
Сообщений: 1,453
По умолчанию

Цитата:
Сообщение от kraw2 Посмотреть сообщение
Событий связанных с нажатием клавиши в нем нет.
клонируй компонент, и добавь сам нужные события (если клонировать, то нужен FullSource, т.е. с открытым кодом, .. если нет - не получится)

пример MouseEnter:

Код:
unit BS_Label;

interface

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

type
  TBS_Label = class(TLabel)
  private
    { Private declarations }
    FOnMouseLeave: TNotifyEvent;
    FOnMouseEnter: TNotifyEvent;
    procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
    procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
  protected
    { Protected declarations }
  public
    { Public declarations }
  published
    { Published declarations }
    property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;
    property OnMouseEnter: TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Custom', [TBS_Label]);
end;

{ TBS_Label }

procedure TBS_Label.CMMouseEnter(var Message: TMessage);
begin
  if Assigned(FOnMouseEnter) then
    FOnMouseEnter(Self);
end;

procedure TBS_Label.CMMouseLeave(var Message: TMessage);
begin
  if Assigned(FOnMouseLeave) then
    FOnMouseLeave(Self);
end;
end.

Последний раз редактировалось beegl; 17.03.2019 в 08:42. Причина: add code
beegl вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AlphaControls Desprado Общие вопросы Delphi 1 02.01.2012 13:44
AlphaControls rule-z Компоненты Delphi 9 17.05.2011 23:04
AlphaControls AmbaQ Общие вопросы Delphi 4 08.08.2010 13:13
компонент AlphaControls в Delphi TaYgA Компоненты Delphi 2 23.11.2009 17:46
Компонент AlphaControls AXEnic Компоненты Delphi 3 14.06.2009 07:33