Вниз
Скачать: CL | DM;

Можно ли посмотреть описание события без исходного кода?   Найти похожие ветки 

← →
Kolan ©   (2009-08-17 12:57) [0]

Здравствуйте!

Есть набор компонент без исходников. В одном из компонентов есть событие OnDataSend. Можно ли как-то просмотреть его описание? Как-то же делфи показывает хинт при наведении на событие.

Если не понятно что за хинт — вот скриншот (http://img-fotki.yandex.ru/get/3614/ksoftware.b/0_2eafc_31110d2c_orig).

В справке к компонентам событие не описано, с автором связался, написать обработчик по хинту — пробовал:
procedure ZModemDataSend(Sender: TObject; ptrBuffer: PAnsiChar;
     Len: Cardinal; flSyncro: Boolean; flHandled: Boolean);


ИДЕ говорит: E2009 Incompatible types: "Parameter lists differ"


← →
Дмитрий С ©   (2009-08-17 13:02) [1]

Похоже что какието параметры тут var, например, flhandled


← →
Kolan ©   (2009-08-17 13:07) [2]

Я тоже так думаю, не хочется гадать какие, хочется посмотреть интерфейс.


← →
TUser ©   (2009-08-17 15:02) [3]

Ctrl+Alt+C во время отладки, и глянуть, как параметры передаются.


← →
Дмитрий С ©   (2009-08-17 15:26) [4]

Набери примерно так:

program Project2;

type
 TZModemDataSend=procedure (Sender: TObject; ptrBuffer: PAnsiChar;
    Len: Cardinal; flSyncro: Boolean; var flHandled: Boolean);

var
 T:TZModemDataSend;
begin
 T(|      <<<< курсор тут
end.

и в хинте будет объявление.


← →
Kolan ©   (2009-08-17 15:29) [5]

А как попасть в отладку этого места, если оно не компилится?


← →
Kolan ©   (2009-08-17 15:31) [6]

Так в хинте будет мое объявление, не понял как получить то, которое незнамо где?


← →
Дмитрий С ©   (2009-08-17 15:35) [7]

TZModemDataSend - это тип евента в твоем чудо-dcu-юните


← →
Kolan ©   (2009-08-17 15:46) [8]

Хи, так я незнаю как он выглядит. То есть я знаю что он называется TDataSendEvent, а где он описан — нет. Поэтому на код
var
T:TZModemDataSend;
begin
T(|      <<<< курсор тут
end.


компилятор ругается, что он, мол, не знает что такое TZModemDataSend.


← →
Anatoly Podgoretsky ©   (2009-08-17 15:49) [9]

> Kolan  (17.08.2009 15:46:08)  [8]

Надо ли рассказывать про uses?


← →
Kolan ©   (2009-08-17 15:51) [10]

Что в эти uses писать?


← →
Anatoly Podgoretsky ©   (2009-08-17 15:56) [11]

Имя модуля, в котором описано TZModemDataSend


← →
Kolan ©   (2009-08-17 16:00) [12]

А как его, это имя, узнать?


← →
Ins ©   (2009-08-17 16:02) [13]


> Как-то же делфи показывает хинт при наведении на событие.


Из dcp-файла информацию берет


← →
Дмитрий С ©   (2009-08-17 16:02) [14]

Синим в твоей картинке выделено, и подчеркнуто еще. Модуль и тип.


← →
Kolan ©   (2009-08-17 16:05) [15]

Нет, синим выделено и подчеркнуто — это модуль (nrZmodem) в котором объявлен сам компонет TnrZModem, а событие, судя по тому, что компилятор не знает что такое TDataSendEvent объявлено где-то в другом модуле, который подключен к этому nrZmodem в uses.


← →
Дмитрий С ©   (2009-08-17 16:06) [16]

Напиши там же:
FZModem.OnDataSend(
После скобки должен желтый хинт появится .


← →
Kolan ©   (2009-08-17 16:09) [17]

Точно, так получилось :)

procedure ZModemDataSend(Sender: TObject; ptrBuffer: PAnsiChar;
     Len: Cardinal; flSyncro: Boolean; var flHandled: Boolean);


← →
Kolan ©   (2009-08-17 16:09) [18]

Благодарю.


← →
Kolan ©   (2009-08-18 10:27) [19]

Интересно, что никто не предложил бросить компонент на форму и дважды тыкнуть нужное событие :)



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

Скачать: CL | DM;



Память: 0.49 MB
Время: 0.011 c
1-1218043397
ПЗ
2008-08-06 21:23
2009.10.18
В продолжение темы про DLL-классы на Delphi и MSVC. Нужен совет!


15-1250695519
McSimm
2009-08-19 19:25
2009.10.18
Технические работы


15-1250495822
D.L.
2009-08-17 11:57
2009.10.18
EurekaLog


3-1228248399
TheEd
2008-12-02 23:06
2009.10.18
Можно ли получить доступ к таблицам базы 1С?


2-1250138695
novai
2009-08-13 08:44
2009.10.18
Что делает следующий код с векторами?




   Наверх