![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| DarkProg |
|
||||||
![]() Законченный романтик ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1784 Регистрация: 11.3.2009 Где: Земля Репутация: 2 Всего: 19 |
Не могу понять как можно реализовать следующее.
В общем для понимания напишу мини-класс коорый должен выполняться.
Т.е. есть нечто такое. В неком месте у этого компонета есть вот такое вот присвоение(в неком, потому что я так и не нашёл в каком, но оно есть и почему я так решил опишу далее)
С чего решил что есть, да очень просто, я пишу свой класс в котором мне тое нужно следить за изменением этого Strings и делаю это аналогичным образом
После такого присвоения отказываются работать некоторые вещи, которые работать должны, комментирую строчку опять работает. Вопрос как можно сделать свою процедуру на событие OnChange и при этом так чтобы та которая присвоена ранее работала или как вызывать ранее присвоенную? -------------------- "И твоя голова всегда в ответе за то куда сядет твой зад..." "Я студент - скажите с какого я ВУЗа..." |
||||||
|
|||||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
DarkProg, запомнить "старый" OnChange перед назначением своего, затем в своем вызывать "старый".
Но это может быть чревато... -------------------- There are always someone smarter than you... |
|||
|
||||
| DarkProg |
|
|||
![]() Законченный романтик ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1784 Регистрация: 11.3.2009 Где: Земля Репутация: 2 Всего: 19 |
Честно говоря пока писал как и рассуждаю вслух - додумался, но что-то не срабатывает... Помимо всего прочего там нестандартный TStringList, а немного дописанный, но привидение к другому классу - это ерунда, вытащил. ЗАписал в уазатель, но при выполнении теперь стабильная ошибка... один из указателей равен nil(указатель который в функции) и всё... Добавлено через 11 минут и 41 секунду Ошибка возникает при выполнении "старого" обработчика из-за того что он неправильно понимает Self, в качестве Self почему-то считается TStringList, а должен быть другой класс. Как это можно поправить? -------------------- "И твоя голова всегда в ответе за то куда сядет твой зад..." "Я студент - скажите с какого я ВУЗа..." |
|||
|
||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
Показывай код. -------------------- There are always someone smarter than you... |
|||
|
||||
| DarkProg |
|
||||
![]() Законченный романтик ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1784 Регистрация: 11.3.2009 Где: Земля Репутация: 2 Всего: 19 |
Запоминаю указатель на старый обработчик вот так
А вызвать пытаюсь вот так, что естественно неправильно, не могу понять как правильно
Пробовал использовать как TNotifyEvent, но что-то не работает... Я никак не могу разобраться как именно ссвязаны некоторые свойсва. -------------------- "И твоя голова всегда в ответе за то куда сядет твой зад..." "Я студент - скажите с какого я ВУЗа..." |
||||
|
|||||
| DarkProg |
|
||||||
![]() Законченный романтик ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1784 Регистрация: 11.3.2009 Где: Земля Репутация: 2 Всего: 19 |
Получилось... вот же намучался....
Рассказываю как делать, чтобы больше никто так не мучался.
Объявляем свой тип указателей на некоторую процедуру. Далее, я делал внутри своего класса, но в принципе параллельно где вы захотите объявить, объявляете переменную типа TChangeSQL. Далее надо же что-то записать.
Тем самым сохранил старый обработчик и присовил новый. А внутри нового обработчика пишу следующее
И счастье вот оно -------------------- "И твоя голова всегда в ответе за то куда сядет твой зад..." "Я студент - скажите с какого я ВУЗа..." |
||||||
|
|||||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
Все должно было прекрасно заработать и с TNotifyEvent.
Зачем обнилять переменную? -------------------- There are always someone smarter than you... |
|||
|
||||
| DarkProg |
|
|||
![]() Законченный романтик ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1784 Регистрация: 11.3.2009 Где: Земля Репутация: 2 Всего: 19 |
Да честно говоря без надобности, просто у меня почему-то изначально указатель не был равен nil, хотя после выполнения присваивания уже до лампочки что там будет. Я там кажись кое что ещё пытался сделать вот и осталось. Понятия не имею чего оно не заработало, хотя щас есть одно мнение, пойду попробую... Добавлено через 3 минуты и 55 секунд Да, действительно работает и с TNotifyEvent. Всё дело в объявлении соответствующего типа указателя. С Pointer лучше не баловаться.... -------------------- "И твоя голова всегда в ответе за то куда сядет твой зад..." "Я студент - скажите с какого я ВУЗа..." |
|||
|
||||
| northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
А мне показалось, что всё дело было в "собаке, которая залезла в чужой огород". Это сообщение отредактировал(а) northener - 30.3.2012, 01:40 -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |