Форум: "Начинающим";
Текущий архив: 2008.10.12;
Скачать: [xml.tar.bz2];
Вниз
Ошибка компилятора (!?) Найти похожие ветки
← →
Savek (2008-08-29 16:49) [0]Есть дочерняя форма, вот код модуля
unit UnitActItems;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls;
type
TfrmActItems = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
ePriem: TEdit;
eNakl: TEdit;
eDate: TEdit;
ePost: TEdit;
eSumma: TEdit;
Bevel1: TBevel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
cbPok: TComboBox;
Label6: TLabel;
rgField: TRadioGroup;
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmActItems: TfrmActItems;
implementation
{$R *.dfm}
end.
вызов из основной формы:
procedure TBaseForm.PrintActExecute(Sender: TObject);
var s : currency;
cdsHelp : TClientDataSet;
PostP,NameP : string;
IdP : integer;
begin
if not Assigned(frmActItems) then frmActItems:=TfrmActItems.Create(self);
case LastActive of
5: begin
...
Вываливается ошибка в 1-ой строке:
"Project Knopka.exe raised exception EClassNotFound with message " Class TRadioGroup not found"
Куда копать?
ЗЫ Если из дочерней формы удалить rgField, все работает без ошибок. Если опять добавить какой либо компонент, вываливается ошибка " Class TXXXXXX not found" ????
← →
ZiZi (2008-08-29 16:58) [1]rgField Видно прописывал ручками ... Да?
← →
Игорь Шевченко © (2008-08-29 17:01) [2]текст dfm в студию
← →
Savek (2008-08-29 17:01) [3]нет. Кидал на форму как обычно.
← →
ZiZi (2008-08-29 17:03) [4]
> текст dfm в студию
Действительно. Чёто-как-то-так...
← →
Savek (2008-08-29 17:04) [5]вот dfm
object frmActItems: TfrmActItems
Left = 279
Top = 158
Width = 404
Height = 283
Caption = "Параметры акта приемки"
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = "MS Sans Serif"
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Bevel1: TBevel
Left = 8
Top = 8
Width = 377
Height = 201
end
object Label1: TLabel
Left = 24
Top = 19
Width = 111
Height = 13
Caption = "Дата приемки товара"
end
object Label2: TLabel
Left = 24
Top = 43
Width = 91
Height = 13
Caption = "Номер накладной"
end
object Label3: TLabel
Left = 24
Top = 67
Width = 83
Height = 13
Caption = "Дата накладной"
end
object Label4: TLabel
Left = 24
Top = 91
Width = 115
Height = 13
Caption = "Название поставщика"
end
object Label5: TLabel
Left = 24
Top = 115
Width = 74
Height = 13
Caption = "Сумма по акту"
end
object Label6: TLabel
Left = 24
Top = 139
Width = 60
Height = 13
Caption = "Покупатель"
end
object ePriem: TEdit
Left = 176
Top = 16
Width = 201
Height = 21
TabOrder = 0
Text = "ePriem"
end
object eNakl: TEdit
Left = 176
Top = 40
Width = 201
Height = 21
TabOrder = 1
Text = "eNakl"
end
object eDate: TEdit
Left = 176
Top = 64
Width = 201
Height = 21
TabOrder = 2
Text = "eDate"
end
object ePost: TEdit
Left = 176
Top = 88
Width = 201
Height = 21
TabOrder = 3
Text = "ePost"
end
object eSumma: TEdit
Left = 176
Top = 112
Width = 201
Height = 21
Enabled = False
TabOrder = 4
Text = "eSumma"
end
object BitBtn1: TBitBtn
Left = 112
Top = 216
Width = 75
Height = 25
Caption = "Печать"
TabOrder = 5
Kind = bkOK
end
object BitBtn2: TBitBtn
Left = 216
Top = 216
Width = 75
Height = 25
Caption = "Отмена"
TabOrder = 6
Kind = bkCancel
end
object cbPok: TComboBox
Left = 176
Top = 136
Width = 201
Height = 22
Style = csOwnerDrawFixed
ItemHeight = 16
ItemIndex = 0
TabOrder = 7
Text = "Покупатель 1"
Items.Strings = (
"Покупатель 1"
"Покупатель 2")
end
object RadioGroup1: TRadioGroup
Left = 24
Top = 168
Width = 345
Height = 41
Caption = "RadioGroup1"
TabOrder = 8
end
end
← →
Anatoly Podgoretsky © (2008-08-29 17:06) [6]А ты Label6: TLabel; удали
← →
ZiZi (2008-08-29 17:07) [7]Перепеши имя объекта RadioGroup1 на rgField
← →
Savek (2008-08-29 17:15) [8]to Anatoly Podgoretsky : Это шутка? Ну все равно удалил, эффекта никаккого (за исключением отсуствия оного)
to ZiZi : имя здесь не причем, просто между [1] и [5] я удалял этот компонент, и потом когда вставил обратно, забыл ему имя поменять
← →
Savek (2008-08-29 17:18) [9]Если немного углубиться, эта форма создавалась где-то полгода назад, первоначальный вариант без TRadioGroup. А вчера понадобилось добавить этот компонент и вот крыша уже едет....
← →
stas © (2008-08-29 17:20) [10]А если на основную форму вставить RadioGroup ошибка возникает?
← →
Vlad Oshin © (2008-08-29 17:21) [11]удалить, вставить, сохранить, открыть, запустить?
← →
ZiZi (2008-08-29 17:22) [12]Короче смотри исходники dfm pas и т.д. шерсти... Штоб всё сходилось. Иначе баг или компонент битый.
← →
Savek (2008-08-29 17:29) [13][11],[12] делаю уже два дня, крыша едет, а проблема на месте
to stas: Нет, не возникает. Вообще проект состоит из более чем полсотни модулей, в них используется куча классов, в том числе и TRadioGroup, везде все работает как надо, а эта форма как заговоренная. Разумеется выход есть довольно простой: удалить ее нафиг и создать новый модуль - делов на 5 мин.
Но вопрос ПОЧЕМУ? пока не дает это делать...
← →
Savek (2008-08-29 17:34) [14]Очередной шаг изысканий, добавил строчку в процедуру создания формы:
....
var
frmActItems: TfrmActItems;
implementation
{$R *.dfm}
procedure TfrmActItems.FormCreate(Sender: TObject);
begin
rgField.ItemIndex:=-1;
end;
Имеем след. исключение:
"Project Knopka.exe raised exception EReadError with message " Invalid proprty value"
далее следует гомерический хохот...
← →
Vlad Oshin © (2008-08-29 17:34) [15]
> Savek (29.08.08 17:29) [13]
кстати, вставил все как ты писал - тоже ругнулось.
Кинул еще один радиогрупп, работает. удалил.
потом удалил этот, потом опять вставил - поехало.. dbs2006
← →
ZiZi (2008-08-29 17:37) [16]
> Но вопрос ПОЧЕМУ? пока не дает это делать...
Хм-м-м-м... Интерестно, раз крыша едет. Если уже не... :) Я тогда пасую...
← →
Savek (2008-08-29 17:48) [17]Последний рывок :
создаю новую форму, выделяю все компоненты со старой, копи-паст получается такая же форма но сдругим именем. Вот код модуля
unit UnitTemp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Buttons;
type
TTempForm = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
ePriem: TEdit;
eNakl: TEdit;
eDate: TEdit;
ePost: TEdit;
eSumma: TEdit;
cbPok: TComboBox;
rgField: TRadioGroup;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Bevel1: TBevel;
private
{ Private declarations }
public
{ Public declarations }
end;
var
TempForm: TTempForm;
implementation
{$R *.dfm}
end.
вот код dfm
object TempForm: TTempForm
Left = 192
Top = 114
Width = 401
Height = 283
Caption = "TempForm"
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = "MS Sans Serif"
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 24
Top = 19
Width = 111
Height = 13
Caption = "???? ??????? ??????"
end
object Label2: TLabel
Left = 24
Top = 43
Width = 91
Height = 13
Caption = "????? ?????????"
end
object Label3: TLabel
Left = 24
Top = 67
Width = 83
Height = 13
Caption = "???? ?????????"
end
object Label4: TLabel
Left = 24
Top = 91
Width = 115
Height = 13
Caption = "???????? ??????????"
end
object Label5: TLabel
Left = 24
Top = 115
Width = 74
Height = 13
Caption = "????? ?? ????"
end
object Label6: TLabel
Left = 24
Top = 136
Width = 60
Height = 13
Caption = "??????????"
end
object Bevel1: TBevel
Left = 8
Top = 8
Width = 377
Height = 201
end
object ePriem: TEdit
Left = 176
Top = 16
Width = 201
Height = 21
TabOrder = 0
Text = "ePriem"
end
object eNakl: TEdit
Left = 176
Top = 40
Width = 201
Height = 21
TabOrder = 1
Text = "eNakl"
end
object eDate: TEdit
Left = 176
Top = 64
Width = 201
Height = 21
TabOrder = 2
Text = "eDate"
end
object ePost: TEdit
Left = 176
Top = 88
Width = 201
Height = 21
TabOrder = 3
Text = "ePost"
end
object eSumma: TEdit
Left = 176
Top = 112
Width = 201
Height = 21
Enabled = False
TabOrder = 4
Text = "eSumma"
end
object cbPok: TComboBox
Left = 176
Top = 136
Width = 201
Height = 22
Style = csOwnerDrawFixed
ItemHeight = 16
ItemIndex = 0
TabOrder = 5
Text = "?????????? 1"
Items.Strings = (
"?????????? 1"
"?????????? 2")
end
object rgField: TRadioGroup
Left = 24
Top = 168
Width = 345
Height = 41
Caption = "rgField"
TabOrder = 6
end
object BitBtn1: TBitBtn
Left = 112
Top = 216
Width = 75
Height = 25
Caption = "??????"
TabOrder = 7
Kind = bkOK
end
object BitBtn2: TBitBtn
Left = 216
Top = 216
Width = 75
Height = 25
Caption = "??????"
TabOrder = 8
Kind = bkCancel
end
end
вот вызов из основной формы
procedure TBaseForm.PrintActExecute(Sender: TObject);
var s : currency;
cdsHelp : TClientDataSet;
PostP,NameP : string;
IdP : integer;
begin
if not Assigned(TempForm) then Tempform:=TTempForm.Create(self);
case LastActive of
5: begin
...
Запускаем... Вауля ! Все работает, никаких исключений.
No comment. Всем спасибо. Пошел домой.
ЗЫ Старый модуль сохраню. Если описанная трабла будет возникать в новом проекте с этим модулем, буду пугать им коллег )
← →
{RASkov} © (2008-08-29 18:24) [18]> Ошибка компилятора (!?)
Уже не интересно.... слишком часто :)
← →
Anatoly Podgoretsky © (2008-08-29 18:42) [19]Совсем другой dfm, чем текст из pas
← →
Leonid Troyanovsky © (2008-08-29 19:17) [20]
> Anatoly Podgoretsky © (29.08.08 18:42) [19]
> Совсем другой dfm, чем текст из pas
Между ними же полгода.
--
Regards, LVT.
← →
Anatoly Podgoretsky © (2008-08-29 19:24) [21]> Leonid Troyanovsky (29.08.2008 19:17:20) [20]
А нафига обсуждать dfm от другого проекта, который работает.
Мазохисты что ли, это ведь искать там где светлее.
← →
Leonid Troyanovsky © (2008-08-29 20:26) [22]
> Anatoly Podgoretsky © (29.08.08 19:24) [21]
> Мазохисты что ли, это ведь искать там где светлее.
IMHO, это просто путанники.
Путают ошибки компилятора с собс-ручным раздолбайством.
--
Regards, LVT.
← →
Amoeba © (2008-08-29 21:31) [23]
> Путают ошибки компилятора с собс-ручным раздолбайством.
Это точно. Зеркало виновато ...
← →
Anatoly Podgoretsky © (2008-08-29 23:18) [24]> Leonid Troyanovsky (29.08.2008 20:26:22) [22]
А я думаю просто по жизни такой.
Ты слышал, что китайцы пьют пиво с раками,
Да это просто у них лица такие.
← →
Savek (2008-08-30 11:04) [25]Ну ладно, беру свои слова обратно, может конечно компилятор тут ни причем, ошибка моя. Но вот почему-то никто не обратил внимания на
"Project Knopka.exe raised exception EClassNotFound with message " Class TRadioGroup not found"
и
"Project Knopka.exe raised exception EReadError with message " Invalid propеrty value"
я впервые встречаю подобные исключения, кто-нибудь может их прокомментировать?
← →
{RASkov} © (2008-08-30 11:20) [26]> [25] Savek (30.08.08 11:04)
> я впервые встречаю подобные исключения, кто-нибудь может
> их прокомментировать?
А выделить строку с сообщением в окне сообщений и нажать F1
Хотя тут достаточно перевести на русский....
1 - Не зарегистрирован и в следствии не найден указанный класс...
2 - Не верное значение свойства...
← →
Savek (2008-08-30 12:43) [27]1. Это ошибка рун-тайм
2. Перевести я и сам смог.
3. Из чего следует что класс не зарегестрирован? И почему он не найден, если Синтакс чек не выдает никаких сообщений и исходник нормально компилируется в ехе
4. На самом то деле значение св-ва верное (-1)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.10.12;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.057 c