Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.10.10;
Скачать: [xml.tar.bz2];

Вниз

Есть ли у RichEdit событие OnMouseOver   Найти похожие ветки 

 
AL2002   (2002-09-28 00:48) [0]

Я имею в виду, когда указатель мыши движется над ричэдитом.
Чё то я в свойствах ричэдита этого не вижу.


 
AL2002   (2002-09-28 01:11) [1]

Да уж!
Проглядел я его.
Сорри.
Есть такое событие. И что самое интересное — оно работает.


 
AL2002   (2002-09-28 01:31) [2]

Ну ладно, а где даблклик у ричэдита?


 
Smiths   (2002-09-28 11:28) [3]

"Look at the source, Luke!" :)


 
Рыжик   (2002-09-30 10:10) [4]

DblClick у RichEdit есть, но protected (наследуется от TControl)

Можно сделать так:
TMyRichEdit = class(TRichEdit)
property OnDblClick;
end;


 
AL2002   (2002-09-30 13:43) [5]

>Рыжик © (30.09.02 10:10)
Ух ты. А где это писать?
И как потом процедуру добавить в даблклик?


 
Рыжик   (2002-09-30 15:10) [6]

Это надо писать в секции type. Затем создаёшь в runtime.
var ri:TMyRichEdit;
...
begin
ri:=TMyRichEdit.Create(...);
ri.Parent:=...;
ri.OnDblClick:=RichEditDoubleClick;
....

Либо зарегистрировать новую компоненту и использовать и в design-time.



 
pasha_golub   (2002-09-30 15:25) [7]

2 Рыжик: по-моему секцию нада поставить, чтобы в Инспекторе Объектов появилась эта хрень :-)

> TMyRichEdit = class(TRichEdit)
PUBLISHED
> property OnDblClick;
> end;





 
AL2002   (2002-10-01 11:22) [8]

А сам компонент ричэдит можно доделать?
Если можно, то как? Чтобы его не испоганить, конечно.


 
Рыжик   (2002-10-01 12:20) [9]


> pasha_golub © (30.09.02 15:25)

По-моему не надо. Если секция не указывается, то и так считается, что это published.


> AL2002 © (01.10.02 11:22)

Если хочешь изменить сам RichEdit, то измени его исходники добавлением в published строчки property OnDblClick. Это ничего не испортит. Только изменит видимость свойства, а на функциональность не повлияет. Затем надо будет перекомпилировать пакет, в котором находится RichEdit.
Но лучше всё-таки написать свой компонент-наследник. Тем более, что кода-то всего 3 строчки.


 
han_malign   (2002-10-01 12:35) [10]

только не забыть еще
procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure WMMouseDblClick(var Message: TMessage); message WM_MBUTTONDBLCLK;

короче смотрите реализации в исходниках VCL


 
AL2002   (2002-10-01 12:43) [11]

Ну-ну. Накручу я с ним что-то, чувствую.


 
AL2002   (2002-10-01 13:38) [12]

А есть ли статья о написаниях наследников?
Боюсь накуролесить.


 
gek   (2002-10-01 13:47) [13]


TMyRichEdit = class(TRichEdit)
private
FOnMouseEnter:TNotifyEvent;
protected
procedure MouseLeave(var Message:TMessage);message CM_MOUSELEAVE;
PUBLISHED
property OnMouseEnter: TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
end;

procedure TMyRichEdit.MouseEnter(var Message:TMessage);
begin
if assigned (FOnMouseEnter) then FOnMouseEnter(self);
end;



и далее аналогично


 
AL2002   (2002-10-01 13:50) [14]

>gek © (01.10.02 13:47)
А даблклик?





Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.10.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
1-31844
maxi-mov
2002-09-22 16:41
2002.10.10
Как перенести файл с одного каталога в другой?


1-31887
Граф
2002-09-30 06:03
2002.10.10
как вызвать стандартное контекстное меню для файла


1-31743
Magic
2002-10-01 12:42
2002.10.10
Окно перед программой


3-31642
Виталий Панасенко
2002-09-19 18:00
2002.10.10
Скорость выполнения запроса


1-31814
sammy
2002-10-02 12:46
2002.10.10
change date





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский