Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #16  
Старый 08.08.2011, 18:15
Аватар для Viajero
Viajero Viajero вне форума
Активный
 
Регистрация: 14.06.2011
Адрес: РБ
Сообщения: 214
Версия Delphi: Delphi 7 FB 2.5
Репутация: 5849
По умолчанию

Cвой класс желательно в отдельном unit делать и по моему в дельфи, если не ошибаюсь, class(TObject) должен быть.
А что, в данном случае пишет ошибку? желательно текст ошибки.
__________________
- Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА!

Последний раз редактировалось Viajero, 08.08.2011 в 18:23.
Ответить с цитированием
  #17  
Старый 08.08.2011, 19:46
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

первое что бросается в глаза

PHP код:
begin
label1
.Caption := inttostr(function test.x(5));
end

PHP код:
var
  
testobjtest;
begin
  testobj 
:= test.create(10);
  
label1.Caption := inttostr(testobj.x(20));
  
testobj.free;
end 
Ответить с цитированием
  #18  
Старый 08.08.2011, 21:29
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Ещё, это что значит?
Код:
function test.x(y: integer) : integer;
begin
  x := a + y;
end;
сам понял?
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #19  
Старый 09.08.2011, 09:33
bezzzare bezzzare вне форума
Прохожий
 
Регистрация: 05.08.2011
Сообщения: 27
Репутация: 10
По умолчанию

pyro спасибо))))
все заработало!!!

а можете объяснить что там не так было?
Ответить с цитированием
  #20  
Старый 09.08.2011, 09:56
bezzzare bezzzare вне форума
Прохожий
 
Регистрация: 05.08.2011
Сообщения: 27
Репутация: 10
По умолчанию

я так понимаю мы тут создаем объект класса?

но я же его создал вот тут

constructor test.create;
begin
a:=10;
end;

или это не то?
а что тогда я сделал тут?
Ответить с цитированием
  #21  
Старый 09.08.2011, 11:49
icWasya icWasya вне форума
Местный
 
Регистрация: 09.11.2010
Сообщения: 499
Репутация: 10
По умолчанию

Цитата:
Сообщение от bezzzare
или это не то?
а что тогда я сделал тут?

Тут
Код:
constructor test.create;
begin
a:=10;
end;
ты написал, что должно происходить при создании объекта класса.
Вот тут
Код:
Var
  T: test;
описывается переменная типа вашего класса.
а вот тут
Код:
 T:=test.create
мы и создаем объект класса.
Ответить с цитированием
  #22  
Старый 09.08.2011, 11:54
bezzzare bezzzare вне форума
Прохожий
 
Регистрация: 05.08.2011
Сообщения: 27
Репутация: 10
По умолчанию

понятно!
спасибо всем)
Ответить с цитированием
  #23  
Старый 10.08.2011, 13:23
bezzzare bezzzare вне форума
Прохожий
 
Регистрация: 05.08.2011
Сообщения: 27
Репутация: 10
По умолчанию

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

это разумно?
как вообще обычно это делают?
Ответить с цитированием
  #24  
Старый 10.08.2011, 13:36
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

чтобы не начинать холивар не буду писать разумно или нет описывать класс родителя и его потомков в одном модуле
отвечу так: к примеру модуль Classes:

Код:
type

  TStrings = class(TPersistent)
  private
  ...

  TStringList = class(TStrings)
  private
  ...
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #25  
Старый 10.08.2011, 15:31
bezzzare bezzzare вне форума
Прохожий
 
Регистрация: 05.08.2011
Сообщения: 27
Репутация: 10
По умолчанию

непонял
Ответить с цитированием
  #26  
Старый 10.08.2011, 15:41
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

а что тут непонятного? делай как тебе удобней - никто тебя за это пинать не будет. ведь даже в java просто рекомендуют, но не заставляют делать 1 файл = 1 класс)))
у Инди вот так:

Код:
unit IdHTTP;

TIdCustomHTTP = class(TIdTCPClient)

TIdHTTP = class(TIdCustomHTTP)

Код:
unit IdTCPClient;

TIdTCPClient = class(TIdTCPConnection)

лишь бы потом в коде самому не заблудиться
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #27  
Старый 10.08.2011, 17:58
bezzzare bezzzare вне форума
Прохожий
 
Регистрация: 05.08.2011
Сообщения: 27
Репутация: 10
По умолчанию

а как сделать так чтоб родительский класс был в другом модуле?
Ответить с цитированием
  #28  
Старый 10.08.2011, 18:31
Аватар для Viajero
Viajero Viajero вне форума
Активный
 
Регистрация: 14.06.2011
Адрес: РБ
Сообщения: 214
Версия Delphi: Delphi 7 FB 2.5
Репутация: 5849
По умолчанию

Просто создать отдельный модуль (в Delphi называется Unit) и написать в нём класс. Что тут сложного?
__________________
- Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА!
Ответить с цитированием
  #29  
Старый 11.08.2011, 17:04
bezzzare bezzzare вне форума
Прохожий
 
Регистрация: 05.08.2011
Сообщения: 27
Репутация: 10
По умолчанию

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if x <= x+75 then begin
x:= x+1;
button1.left := button1.left+x;
end
else Timer1.Enabled:= false;
end;

procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
x:=button1.Left;
Timer1.Interval:= 20;
Timer1.Enabled:= true;
end;


почему кнопка не останавливается?((
Ответить с цитированием
  #30  
Старый 11.08.2011, 17:16
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Ошибка в ДНК
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 10:31.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter