Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
2 / 2 / 1
Регистрация: 15.08.2014
Сообщений: 170
1

Ошибка при добавлении компонента в существующий пакет

15.08.2014, 12:18. Показов 1367. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Кто знает, подскажите. Пол дня мучаюсь.
Написал для пробы свой компонент Component->New Component - кнопка CountBtn -наследник TButton.
Вот его простой код.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
unit CountBtn;
 
interface
 
uses
  System.SysUtils, System.Classes, Vcl.Controls, Vcl.StdCtrls;
 
type
  TCountBtn = class(TButton)
  private
  { Private declarations }
    FCount:Integer;
    protected
  { Protected declarations }
  procedure Click; override;
  public
  { Public declarations }
  procedure ShowCount;
  published
  { Published declarations }
  property Count:integer read FCount write FCount;
  constructor Create(aowner:Tcomponent); override;
  end;
 
procedure Register;
 
implementation
 
procedure Register;
begin
  RegisterComponents('MyComponents', [TCountBtn]);
end;
 
{ TCountBtn }
 
procedure TCountBtn.Click;
begin
  inherited click;
  FCount:=FCount+1;
end;
 
constructor TCountBtn.Create(aowner: Tcomponent);
begin
  inherited create(Aowner);
end;
 
procedure TCountBtn.ShowCount;
begin
Showmessage('По кнопке '+caption+' вы сделали: '+inttostr(FCount)+' клик(а/ов)');
end;
 
end.
Порядок добавления в существующий пакет (показано стрелкой) и ОШИБКА !!!!!!!!! показаны ниже на скриншотах во вложенных файлах.
Чего делать мне с этой ошибкой ? Пробовал на трех компах, везде тоже самое (((
Миниатюры
Ошибка при добавлении компонента в существующий пакет   Ошибка при добавлении компонента в существующий пакет   Ошибка при добавлении компонента в существующий пакет  

0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.08.2014, 12:18
Ответы с готовыми решениями:

Ошибка при добавлении компонента на форму
причем на форме уже есть компоненты.. выдает ошибку в адрессе и ссылается на модуль rtl60.bpl в...

Ошибка при добавлении компонента на форму
Здравствуйте! Проблема в том что при добавлении нового компонента на форму часто бывает так что...

Ошибка при добавлении компонента управления
Здравствуйте, на днях начал изучать wpf, походу доигрался и при добавлении любого компонента на...

Создание компонента, при добавлении автоматически получить Parent фокусированного компонента
Привет всем, вот ни разу не писал еще компоненты, начал разбираться, все просто, понятно, доступно,...

10
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
15.08.2014, 15:01 2
Не все модули подключены, добави модуль dialogs для процедуры showmessage
0
2 / 2 / 1
Регистрация: 15.08.2014
Сообщений: 170
15.08.2014, 15:23  [ТС] 3
Добавил в uses к уже имеющемуся:

System.Windows, System.Messages, System.Graphics, Vcl.Forms, Vcl.ExtCtrls, Vcl.Dialogs

Правда не знаю где перед точкой писать System а где Vcl.

Но все равно та же самая ошибка !! ....
0
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
15.08.2014, 15:42 4
У меня Delphi7 все встало
0
2 / 2 / 1
Регистрация: 15.08.2014
Сообщений: 170
15.08.2014, 15:44  [ТС] 5
В чем и проблема мало кто на XE работает (
0
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
15.08.2014, 15:54 6
В модуль компонента деструктор еще добавь

Добавлено через 2 минуты
И еще
Delphi
1
2
3
4
5
constructor TCountBtn.Create(aowner: Tcomponent);
begin
  inherited create(Aowner);
  FCount:=0;
end;
0
2 / 2 / 1
Регистрация: 15.08.2014
Сообщений: 170
15.08.2014, 16:01  [ТС] 7
деструктор должен по умолчанию работать,но попробую

Добавлено через 3 минуты
Еще что хреново, так как код не компилиться, ошибки не показывает...

Добавлено через 2 минуты
Все то же самое. Задолбался. Нужен кто-нибудь с делфями XE5. Попробуйте кто-нибудь у себя поставьте !!! Такая ерунда у меня уже день сожрала весь !!
0
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
15.08.2014, 16:13 8
Так сделай проверку, создай проект добавь к нему модуль

Delphi
1
2
3
4
5
var
CountBtn: TCountBtn;
...
CountBtn:=TCountBtn.Create(self);
CountBtn.ParentWindows:=form1.Handle;
Добавлено через 2 минуты
Но в ошибке у тебя паказывает какой то другой пакет, может в нем что-то есть, а не из-за твоего компонента это, из-за других модулей которых нет пакет не добавиться и не сможеш компилировать
0
2 / 2 / 1
Регистрация: 15.08.2014
Сообщений: 170
17.08.2014, 01:00  [ТС] 9
Переустановил XE5 на XE5 update 2 .... все добавляется. И теперь компилируется компонент и показывает ошибки, в showmessage действительно ошибка, я его пока закомментил и все добавилось ... Вот такие дела. А в первой версии даже не компилилось, так что кому надо смотрите на рутрекере: Embarcadero RAD Studio XE5 Architect Update 2
0
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
17.08.2014, 02:19 10
Процедура
Delphi
1
2
3
4
procedure TCountBtn.ShowCount;
begin
Showmessage('По кнопке '+caption+' вы сделали: '+inttostr(FCount)+' клик(а/ов)');
end;
тебе и не нужна там
У тебя есть
Delphi
1
property Count:integer read FCount write FCount;
По которой и нужно проверять, в основной программе
Delphi
1
  Showmessage('По кнопке '+CountBtn.caption+' вы сделали: '+inttostr(CountBtn.Count)+' клик(а/ов)');
0
Житель Земли
3002 / 3004 / 391
Регистрация: 26.07.2011
Сообщений: 11,463
Записей в блоге: 1
18.08.2014, 12:24 11
Цитата Сообщение от serg55 Посмотреть сообщение
property Count:integer read FCount write FCount;
свойство только для чтения! зачем write?

Добавлено через 3 минуты
Цитата Сообщение от serg55 Посмотреть сообщение
constructor Create(aowner:Tcomponent); override;
конструктор в public перенеси!

Добавлено через 2 минуты
компонент рабочий, здесь просто негде ошибке притаиться, в принципе.
а деструктор и нафиг не нужен

Добавлено через 1 минуту
может быть, AV вылазит именно из-за неправильного расположения конструктора?!
0
18.08.2014, 12:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.08.2014, 12:24
Помогаю со студенческими работами здесь

Элемент заменяет существующий при добавлении в список
Доброго времени суток. Не могу разобраться с добавлением элемента в однонаправленый список. Я его...

При добавлении в существующий список, новые записи добавлять в начало
Как сделать так, чтобы при добавлении в существующий список, новые записи добавлялись в начало? ...

[Servlets] Как не переписывать существующий код при добавлении multipart
Есть сервлет, которые получает данные с формы. Понадобилось добавить к форме <input type=file" для...

смещение при добавлении компонента на панель
Доброго времени суток. Реализуя анимация соударения множества шаров друг о друга наткнулся на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru