Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
бодричком
1 / 1 / 1
Регистрация: 23.11.2012
Сообщений: 33
1

Про создание класса

14.08.2013, 21:24. Просмотров 828. Ответов 21
Метки нет (Все метки)

Я создал класс и свойства
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
type
cardsVer = class(Timage)
 private
 procedure CV(Value:integer);
 function  CVer : integer;
  procedure CV1(Value:integer);
 function  CVer1 : integer;
  procedure CV2(Value:integer);
 function  CVer2 : integer;
  procedure CV3(Value:integer);
 function  CVer3 : integer;
  procedure CV4(Value:integer);
 function  CVer4 : integer;
 public
property HP:integer read CVer write CV;
property Atack:integer read CVer1 write CV1;
property armor:integer read CVer2 write CV2;
property move:integer read CVer3 write CV3;
property Rast:integer read CVer4 write CV4;
Но когда я объекту это класса присваиваю например объект.move:=3 (на таймер пишу кот что LAbel1.caption:=(inttostr(объект.move)) то показывает не 3 а 21556 и при каждом запуске по разному что это может класс не правильно создал
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2013, 21:24
Ответы с готовыми решениями:

Создание класса с унаследованными методами класса-предка
Подскажите, как создать класс с унаследованными методами класса-предка?

Тупой вопрос про создание массива
Мне надо создать массив например a:array of integer где n - число, которое...

И снова про PopupMenu (было про длину, теперь про ширину)
Добавляем в пустое PopupMenu несколько пунктов динамически (шириной, например,...

Создание класса
Доброе время суток! Помогите с созданием класса! Необходимо чтобы была такая...

Создание класса
Не совсем понимаю как создать класс и затем применить его в теле самой...

21
northener
пофигист широкого профиля
3429 / 2328 / 631
Регистрация: 15.07.2013
Сообщений: 13,796
14.08.2013, 21:29 2
А где реализация всех этих процедур/функций?
0
FIL
Модератор
3422 / 2556 / 728
Регистрация: 19.09.2012
Сообщений: 7,926
14.08.2013, 21:44 3
move - слово, зарезервированное Дельфи, его лучше не использовать.
0
бодричком
1 / 1 / 1
Регистрация: 23.11.2012
Сообщений: 33
14.08.2013, 22:08  [ТС] 4
Даже если в место move написать любое другое то же самое происходит
0
FIL
Модератор
3422 / 2556 / 728
Регистрация: 19.09.2012
Сообщений: 7,926
14.08.2013, 22:10 5
Цитата Сообщение от бодричком Посмотреть сообщение
Даже если в место move написать любое другое то же самое происходит
Я и не говорил, что это все решит.
Реализации покажи.
0
бодричком
1 / 1 / 1
Регистрация: 23.11.2012
Сообщений: 33
14.08.2013, 22:39  [ТС] 6
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, jpeg, StdCtrls;
 
type
  TForm1 = class(TForm)
    Image1: TImage;
    Timer1: TTimer;
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
 
 type
cardsVer = class(Timage)
 private
 procedure CV(Value:integer);
 function  CVer : integer;
  procedure CV1(Value:integer);
 function  CVer1 : integer;
  procedure CV2(Value:integer);
 function  CVer2 : integer;
  procedure CV3(Value:integer);
 function  CVer3 : integer;
  procedure CV4(Value:integer);
 function  CVer4 : integer;
 public
property HP:integer read CVer write CV;
property Atack:integer read CVer1 write CV1;
property armor:integer read CVer2 write CV2;
property move:integer read CVer3 write CV3;
property Rast:integer read CVer4 write CV4;
end;
var
  Form1: TForm1;
    image: cardsver;
implementation
 
{$R *.dfm}
 
{ cardsVer }
 
procedure cardsVer.CV(Value: integer);
begin
 
end;
 
procedure cardsVer.CV1(Value: integer);
begin
 
end;
 
procedure cardsVer.CV2(Value: integer);
begin
 
end;
 
procedure cardsVer.CV3(Value: integer);
begin
 
end;
 
procedure cardsVer.CV4(Value: integer);
begin
 
end;
 
function cardsVer.CVer: integer;
begin
 
end;
 
function cardsVer.CVer1: integer;
begin
 
end;
 
function cardsVer.CVer2: integer;
begin
 
end;
 
function cardsVer.CVer3: integer;
begin
 
end;
 
function cardsVer.CVer4: integer;
begin
 
end;
 
 
 
procedure TForm1.FormCreate(Sender: TObject);
begin
 
with cardsver.Create(self)  do begin
 parent:=form1;
 picture.LoadFromFile('image/024.jpg');
 move:=3;
 name:='tank';
 end;
 
 
end;
 
procedure TForm1.Timer1Timer(Sender: TObject);
begin
image:=findcomponent('tank') as cardsver;
label1.Caption:=inttostr(image.move);
 
end;
 
end.
0
northener
пофигист широкого профиля
3429 / 2328 / 631
Регистрация: 15.07.2013
Сообщений: 13,796
14.08.2013, 22:42 7
Цитата Сообщение от бодричком Посмотреть сообщение
function cardsVer.CVer3: integer; begin end;
Ну вот. Что написал, то и получил.
0
бодричком
1 / 1 / 1
Регистрация: 23.11.2012
Сообщений: 33
15.08.2013, 11:50  [ТС] 8
А что неправильно ?
0
angstrom
2471 / 1847 / 242
Регистрация: 14.09.2012
Сообщений: 5,981
Записей в блоге: 2
15.08.2013, 11:58 9
Откуда читаются и куда записываются данные? Другими словами, где соответствующие "поля"?
0
FIL
Модератор
3422 / 2556 / 728
Регистрация: 19.09.2012
Сообщений: 7,926
15.08.2013, 12:01 10
Цитата Сообщение от бодричком Посмотреть сообщение
А что неправильно ?
И что по-твоему делают добавленные тобой процедуры и ф-ции?
0
northener
пофигист широкого профиля
3429 / 2328 / 631
Регистрация: 15.07.2013
Сообщений: 13,796
15.08.2013, 12:06 11
Цитата Сообщение от бодричком Посмотреть сообщение
А что неправильно ?
Точнее спросить так.
Что по-твоему означает такая запись:
Delphi
1
property move:integer read CVer3 write CV3;
?
0
angstrom
2471 / 1847 / 242
Регистрация: 14.09.2012
Сообщений: 5,981
Записей в блоге: 2
15.08.2013, 12:14 12
Запись верная, полей только не хватает.
0
бодричком
1 / 1 / 1
Регистрация: 23.11.2012
Сообщений: 33
15.08.2013, 17:35  [ТС] 13
Можно объяснить как правильно создать property целое
0
northener
пофигист широкого профиля
3429 / 2328 / 631
Регистрация: 15.07.2013
Сообщений: 13,796
15.08.2013, 17:42 14
Цитата Сообщение от бодричком Посмотреть сообщение
Можно объяснить как правильно создать property целое
Открываешь любой исходник VCL и смотришь.
0
angstrom
2471 / 1847 / 242
Регистрация: 14.09.2012
Сообщений: 5,981
Записей в блоге: 2
15.08.2013, 17:46 15
В упрощённом виде.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
type
  cardsVer = class(Timage)
  private
    fHP : Integer;
    procedure CV(Value : Integer);
    function  CVer : Integer;
...
  public
    property HP : Integer read CVer write CV;
  end;
...
procedure cardsVer.CV(Value : Integer);
begin
  fHP := Value;
end;
 
function cardsVer.CVer : Integer;
begin
  Result := fHP;
end;
1
бодричком
1 / 1 / 1
Регистрация: 23.11.2012
Сообщений: 33
15.08.2013, 17:59  [ТС] 16
У меня вопрос а можно для двух Property общую процедуру и функцию
0
mss
2634 / 2258 / 276
Регистрация: 24.12.2010
Сообщений: 13,725
15.08.2013, 18:01 17
Цитата Сообщение от бодричком Посмотреть сообщение
а можно для двух Property общую процедуру и функцию
А смысл ?
Просто иметь пару свойств с разными именами, но делающих в точности одно и тоже ?
0
бодричком
1 / 1 / 1
Регистрация: 23.11.2012
Сообщений: 33
15.08.2013, 18:07  [ТС] 18
А да тупанул спасибо

Добавлено через 3 минуты
И еще Result нужно в var заносить
Просто когда у меня одно свойство то я не занося в var - result запускаю все работает а счас у меня больше свойств и выдает ошибку неизвестный индидификатор
0
mss
2634 / 2258 / 276
Регистрация: 24.12.2010
Сообщений: 13,725
15.08.2013, 18:10 19
Цитата Сообщение от бодричком Посмотреть сообщение
когда у меня одно свойство то я не занося в var - result запускаю все работает а счас у меня больше свойств и выдает ошибку неизвестный индидификатор
И что ?
0
бодричком
1 / 1 / 1
Регистрация: 23.11.2012
Сообщений: 33
15.08.2013, 18:16  [ТС] 20
И нельзя Result := fhp;
0
15.08.2013, 18:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.08.2013, 18:16

Создание класса
Пишу простенькую игрушку. Для внешнего вида пушки использую Gauge, т.к. это...

Создание класса
есть код: при попытке компиляции все норм, при попытке создания класса вроде...

Создание класса
Не получается сделать класс, подскажите пожалуйста. Не пойму как сделать,...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru