Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.21;
Скачать: 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 вся ветка

Текущий архив: 2003.04.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
1-67325
Picco
2003-04-08 12:04
2003.04.21
Вопрос по WORD ордовским полям


1-67370
Frist_May
2003-04-09 13:01
2003.04.21
Сервис


1-67355
Roman
2003-04-09 17:01
2003.04.21
SysTray ПОМОГИТЕ!!!


9-67063
STANT
2002-11-09 18:38
2003.04.21
Алогоритм приведения пятнашек в исходное состояние


3-67180
Shirson
2003-04-03 13:33
2003.04.21
В чём грабли с createBlobStream?