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

Не наследуется форма! :(   Найти похожие ветки 

← →
kull ©   (2003-04-08 13:24) [0]

Народ, помогите кто может!

1. У меня на форме компонент TWebDispatcher, а у него свойство Actions. В этом свойстве один элемент WebActionItem1.

2.Создаю новую форму путем наследования.

Все замечательно работает. Но когда у формы предка появляется обработчик WebActionItem1.OnAction то пункт 2 не работает, и Delphi ругается.

Причем это относится не только к TWebDispatcher, но и к другим компонентам имеющим свойства типа TCollectionItem. Этот глюк у Delphi4, у Delphi7 все работает.

Кто-нибудь встречался с таким глюком? Как с этим бороться?


← →
kull ©   (2003-04-08 16:32) [1]

Да...
Похоже здесь мне не ответят.... :(


← →
MityaP ©   (2003-04-08 17:02) [2]

Ты чего (точнее как) делаешь -то ??
Ща попробовал - все нормально наследуется..??


← →
kull ©   (2003-04-08 17:39) [3]

1. В Delphi4 делаю new application
2. на форму кладу компонент TWebDispatcher
3. кликаю по свойству Actions
4. добавляю один элемент (WebActionItem1)
5. кликаю по Event-у OnAction

после этого код выглядит следующим образом.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
TForm1 = class(TForm)
WebDispatcher1: TWebDispatcher;
procedure WebDispatcher1WebActionItem1Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.WebDispatcher1WebActionItem1Action(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
//
end;

end.


6. выбираю пункт меню File->New, вкладка Project1, нажимаю "Ok"

Вылезает ошибка: Error creating form: Access violation ...


← →
MityaP ©   (2003-04-08 18:27) [4]

Ошибка у тебя из-за зацикливания... в обращениях uses !!!
Так наследовать, как ты сказал, можно только не Main форму!!!


← →
MityaP ©   (2003-04-08 18:31) [5]

Если б твоя исходная форма была не главном модуле Main.pas, тогдаб всё прошло удачно...
Извиняюь - пустую форму действительно наследует...


← →
MityaP ©   (2003-04-08 18:36) [6]

Я наследовал руками в пробе, все работает:
type
TForm2 = class(TForm1)
end;

А ты обойди этот глюк при твоем способе наследования...:
1)Выдели все компоненты формы и вырежи их (или удали),
2)потом создай от нее потомка, как ты выше описал
3)вернись на главную форму и сдела Отмену последнего действия (или, вставить - если вырезал)... и все будет ок.!!!
Будет твой потомок без ошибки



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

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



Память: 0.46 MB
Время: 0.012 c
1-67359
OlegM
2003-04-09 10:03
2003.04.21
Объект в текст, текст в объект, как?


1-67347
Kapitan
2003-04-08 11:54
2003.04.21
список кнопокй


14-67516
Izverg
2003-04-03 18:06
2003.04.21
---|Ветка была без названия|---


7-67602
Ega23
2003-02-27 15:04
2003.04.21
USB : С чего начать?


1-67291
Ifrit
2003-04-01 15:56
2003.04.21
Есть RichEdit. Как определить атрибуты текста который находится п




   Наверх