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

Вниз

Одна процедура не видит другую!   Найти похожие ветки 

 
Delhessh   (2012-03-07 22:55) [0]

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

Проблема такая: в одном из гридов динамически создаю столбцы и так как их нет в режиме «дизайна», то программно хочу присвоить определенному событию на каждый вновь создаваемый столбец определенную процедуру. Нашел в интернете пример, который постарался модифицировать под себя, но не получилось.

1. Процедура, где я создаю столбцы

Procedure Load;
Var
ADBColumn: TcxGridDBColumn;
Begin
{…}
ADBColumn:=frmmain.cxGrid1DBTableView1.CreateColumn; {создаю новый столбец}
{…пропускаю ряд строчек кода :)}
ADBColumn.OnGetProperties:=GetColumnProperties; {вот на определенное событие столбца навешиваю свою процедуру}
End;

{процедура обработчик события}
procedure GetColumnProperties(Sender: TObject);
var
 ADBColumn: TcxGridDBColumn;
begin
 ADBColumn := TcxGridDBColumn(sender);
 ShowMessage("ColName is "+ ADBColumn.Caption);
end;


Обе эти процедуры объявлены у меня сейчас в этом фрагменте программы:

{Глобальный VAR}
var
 ….
 …
 Procedure GetColumnProperties(Sender: TObject);
 Procedure LoadTableOrders;

implementation

{$R *.dfm}


Находятся они в одном файле pas.
Суть в том,  что в первой процедуре, когда я в строке ADBColumn.OnGetProperties:=GetColumnProperties;
писваиваю на обработчик свою процедуру, то компилятор ругается….

Что я делаю не так?  Дайте пож-ста пример?


 
Dimka Maslov ©   (2012-03-07 23:23) [1]

Уж если компилятор ругается, то не будет ли автор ветки настолько любезен, что напишет нам здесь весь опус этого сквернослова компилятора?

Хотя мы и догадываемся, что GetColumnProperties должно быть методом какого-либо объекта. Или статическим методом какого-либо класса.

type
 TGetColumnProperties = class (TObject)
 public
    procedure Get(Sender: TObject)
 end;

 ADBColumn.OnGetProperties := TGetColumnProperties.Get;


 
sniknik ©   (2012-03-07 23:46) [2]

> Что я делаю не так?
не читаешь что пишет в "ругани". ошибки они не просто так, типа "не понимаю, значит выкинул и забыл". ошибки это важно.


 
Palladin ©   (2012-03-07 23:56) [3]

интересно при чем тут "глобальный var"  и описание процедур


 
Германн ©   (2012-03-08 02:17) [4]


> Что я делаю не так?

Не купил/не прочитал учебник.


 
Anatoly Podgoretsky ©   (2012-03-08 07:51) [5]

> sniknik  (07.03.2012 23:46:02)  [2]

А вот это было и написано: выкини и забудь



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

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

Наверх




Память: 0.45 MB
Время: 0.074 c
2-1345561687
toropoff
2012-08-21 19:08
2013.03.22
как понять case в описании записи?


15-1345368609
Дмитрий С
2012-08-19 13:30
2013.03.22
Pci-e SSD


15-1339705482
alexdn
2012-06-15 00:24
2013.03.22
Вот чует моё сердце..


15-1341331433
Никто ...
2012-07-03 20:03
2013.03.22
Вторничная даже не задача)))


15-1347692007
Roman_man
2012-09-15 10:53
2013.03.22
Как называется такой вид программы?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский