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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2010, 13:00   #1
aleks.halk
Пользователь
 
Регистрация: 09.10.2010
Сообщений: 14
По умолчанию Добавить события в компонент TrackBar

Подскажите пожалуйста как создать новый компонент на основе TrackBar.
Мне не хватает в стандартном компоненте событий OnClick, onMouseDown, onMouseUp. С ООп я не знаком и мне тяжело сделать эти изменения самому.
Буду благодарен за помощь.
aleks.halk вне форума Ответить с цитированием
Старый 27.10.2010, 13:15   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вот простой пример дописания нового обработчика сообщения
Код:
unit Unit1;

interface

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

type
  TTrackBar=class(ComCtrls.TTrackBar)
   private
    procedure OnMouseDown(var m:TWMLButtonDown); message WM_LButtonDown;
  end;
  TForm1 = class(TForm)
    TrackBar1: TTrackBar;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TTrackBar }

procedure TTrackBar.OnMouseDown;
begin
 ShowMessage('Утопил');
end;

end.
Это не поле для события, а просто внутренний обработчик.
Для onMouseUp примени сообщение WM_LButtonUp
Ну а для OnClick вполне можно попробовать словить BM_Click
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.10.2010, 13:21   #3
WhiteSpirit
Пользователь
 
Регистрация: 28.05.2010
Сообщений: 82
По умолчанию

Можно просто наследовать эти события от предка TTrackBar
Код:
type

  TMyTrackBar = class (TTrackBar)
  published
    property OnClick;
    property OnMouseDown;
    property OnMouseUp;
  end;
WhiteSpirit вне форума Ответить с цитированием
Старый 27.10.2010, 18:25   #4
aleks.halk
Пользователь
 
Регистрация: 09.10.2010
Сообщений: 14
По умолчанию

Stilet, большое спасибо!
дальше постараюсь сам доделать - пытаюсь приспособить его для перемотки в плеере
aleks.halk вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Компонент TrackBar Rafff Общие вопросы C/C++ 0 13.05.2010 18:44
Как добавить события для элементов формы? overflow Общие вопросы .NET 6 20.03.2010 22:21
Можно ли добавить события и свойства во Frame befame Общие вопросы Delphi 1 11.03.2010 17:33
Компонент TrackBar aleks8091 Компоненты Delphi 2 27.12.2009 22:52