![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Frame - как переопределить метод
DelphiLexx © (2007-04-20 18:44:00)У меня есть фрейм в котором есть виртуальные методы. Фрейм вставляется в форму. Как в классе формы переопределить метод из фрейма?
Leonid Troyanovsky (2007-04-20 22:07:00) [1]
> Юрий Зотов © (20.04.07 19:39) [8]
> Если не уметь ею пользоваться - то да.
Просто, "Дельфя" не всем дает.
--
Regards, LVT.
oxffff (2007-04-20 21:50:00) [2]
> Не занаю, не знаю... может быть, я и не знаю ООП но без
> проблем взламываю защиту Guardant ключа...
Что то я не видел тебя в авторах статей по этому поводу на wasm.ru.
Или ты их и читал?
duhast (2007-04-20 19:57:00) [3]ну вот, опоздал с ответом :(
duhast (2007-04-20 19:54:00) [4]Во-первых посмотри иерархию классов (От кого унаследован TFrame и TForm)!!!
У тебя фрейм созданный собственноручно (ну ты создал класс унаследовав его от Tframe) и в нём у тебя определены твои виртуальные методы ? Я так понял?
На форме твой фрейм является всего лиш компонентом, тобиж она имеет указатель на экземпляр твоего класса (фрейма).
>Как в классе формы переопределить метод из фрейма?
В классе формы ты неможеш переопределять методы твоего фрейма, т.к. она унаследована от класса TForm, а не от класса твоего фрейма (читай мануалы - наследование, полиморфизм). В Делфи можно наследоватся только от одного класса (в последних версиях вроде как я слышал можно от нескольких, хотя не факт :)), в отличии от всяких Жаб и т.п.
Если тебе уж так горит переопределить методы твоего фрейма ты должен создать
класс (допусти TMyFrame1), унаследованный от твоего класса фрейма (пускай TMyFrame), в котором есть методы которые ты хочеш переопределить.
Переопредиляеш их там как кочеш (ну в классе TMyFrame1)....
А в самой форме создаёшь экземпляр своего нового класса (TMyFrame1), инициализируешь его и пользуешся своими переопределёнными методами как хош.....
Юрий Зотов (2007-04-20 19:39:00) [5]> DelphiLexx © (20.04.07 19:13) [4]
> Delphi слишком ограничивает программера в возможностях.
Если не уметь ею пользоваться - то да.
А человек, который "без проблем взламывает защиту Guardant ключа" мог бы и догадаться подменить адрес в VMT. Тоже без проблем.
Только зачем?
Ega23 (2007-04-20 19:38:00) [6]
> Новый класс унаследованный от класс с данным virtual-методом.
О! Прекрасно! Правильный ответ.
Но с чего ты взял, что если ты располагаешь на форме (панели, груп-боксе, другом фрейме) свой фрейм, то класс его parent'а оказывается унаследованным от него?
> может быть, я и не знаю ООП но без проблем взламываю защиту
> Guardant ключа...
И что? Это есть повод для гордости?
DelphiLexx (2007-04-20 19:34:00) [7]
> Наводящий вопрос: кто может сделать override какого-либо
> метода?
Новый класс унаследованный от класс с данным virtual-методом.
И есть мнение, что ты не только саму теорию ООП не понимаешь, но и Delphi и SmallTalk.
Не занаю, не знаю... может быть, я и не знаю ООП но без проблем взламываю защиту Guardant ключа...
Ega23 (2007-04-20 19:20:00) [8]
> Посмотри SmallTalk
Я знаю про SmallTalk. Что дальше?
> А в голове у меня не каше, просто Delphi слишком ограничивает
> программера в возможностях.
Никто никого не ограничивает. Всё в рамках стандартных правил.
А в голове у тебя каша. И есть мнение, что ты не только саму теорию ООП не понимаешь, но и Delphi и SmallTalk.
Наводящий вопрос: кто может сделать override какого-либо метода?
DelphiLexx (2007-04-20 19:13:00) [9]
> Никак.
> Есть мнение, что в голове у тебя каша. Иди читай про полиморфизм.
>
Все решил проблему через событие. А в голове у меня не каше, просто Delphi слишком ограничивает программера в возможностях. Посмотри SmallTalk
Ega23 (2007-04-20 18:57:00) [10]
> Вопрос как этот метод мне override в юните формы.
>
Никак.
Есть мнение, что в голове у тебя каша. Иди читай про полиморфизм.
DelphiLexx (2007-04-20 18:55:00) [11]
> У тебя что, форма от фрейма унаследована????
>
> Ты, братец, бред какой-то пишешь...
На форме есть TPanel выравненная по правому краю, на эту панель я кладу фрейм, сам фрейм(отображает данные из БД), в моем фрейме есть виртуальный метод. Вопрос как этот метод мне override в юните формы.
Ega23 (2007-04-20 18:47:00) [12]
> У меня есть фрейм в котором есть виртуальные методы. Фрейм
> вставляется в форму. Как в классе формы переопределить метод
> из фрейма?
>
???????
У тебя что, форма от фрейма унаследована????
Ты, братец, бред какой-то пишешь...