Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.04.2011, 10:00   #1
Valera
Пользователь
 
Регистрация: 23.06.2008
Сообщений: 86
По умолчанию Классы и объекты

Добрый день.

У меня в одном модуле есть два класса, один из них - форма. В другом классе есть function 1. Как можно результат этой функции передать на форму, например, в Edit.Text?
Valera вне форума Ответить с цитированием
Старый 21.04.2011, 11:07   #2
was3110
Форумчанин
 
Аватар для was3110
 
Регистрация: 25.04.2010
Сообщений: 254
По умолчанию

Edit1.Text:=экземплярКласса2.functi on1(); (если функция возвращает строку)
Здесь важно создать переменную ссылку на объект "экземпляр класса2".
И function1 должна быть доступна (не закрытый метод класса)
помогать студентам - моя вторая профессия
was3110 вне форума Ответить с цитированием
Старый 21.04.2011, 11:17   #3
Valera
Пользователь
 
Регистрация: 23.06.2008
Сообщений: 86
По умолчанию

Спасибо, попробую сейчас.
Valera вне форума Ответить с цитированием
Старый 21.04.2011, 12:15   #4
Valera
Пользователь
 
Регистрация: 23.06.2008
Сообщений: 86
По умолчанию

Цитата:
Сообщение от was3110 Посмотреть сообщение
Edit1.Text:=экземплярКласса2.functi on1(); (если функция возвращает строку)
Здесь важно создать переменную ссылку на объект "экземпляр класса2".
И function1 должна быть доступна (не закрытый метод класса)

Не получается. Что не так?
Вот код.
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids;

type
TForm1 = class;
TFClub = class
private
sezon:boolean;
win:integer;
draw:integer;
public
constructor Create(win:integer;draw:integer);ov erload;
function ShowTable(fclub:TFClub):string;
published
property sez:boolean read sezon;
property w:integer read win;
property dr:integer read draw;
end;



/////////////////////////////////////////////////
TForm1 = class(TForm)
Edit5: TEdit;
StringGrid1: TStringGrid;
procedure FormCreate(Sender: TObject);



private
{ Private declarations }
public



end;
/////////////////////////////////////////
var
Form1: TForm1;
n:integer;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
Fclub1:TFClub;
i,j:integer;

begin

with StringGRid1 do
for i:=1 to RowCount-1 do //Çàãîëîâêè ñòðîê íå òðîãàåì
for j:=1 to ColCount-1 do //Çàãîëîâêè ñòîëáöîâ íå òðîãàåì
Cells[j, i]:='1';

n:=0;

begin

Fclub1:=TFClub.Create(StrToInt(Stri ngGrid1.Cells[1,1]),StrToInt(StringGrid1.Cells[2,2]));
Edit5.Text:=Fclub1.ShowTable(Fclub1 );

end;

end;

constructor TFClub.Create(win:integer;draw:inte ger);
begin
sezon:=true;
self.win:=win;
self.draw:=draw;

end;

function TFClub.ShowTable(fclub:TFClub):stri ng;
var
a:integer;
b:string;
begin
if fclub.sezon
then


a:=fclub.w +fclub.dr;
b:=IntToStr(a);

end;



end.
Valera вне форума Ответить с цитированием
Старый 21.04.2011, 13:32   #5
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

> Не получается

а что может получится, если результат вашей великолепной ShowTable() неопределён?
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."

Последний раз редактировалось veniside; 21.04.2011 в 13:36.
veniside вне форума Ответить с цитированием
Старый 21.04.2011, 14:22   #6
Valera
Пользователь
 
Регистрация: 23.06.2008
Сообщений: 86
По умолчанию

Что значит, неопределен? А как определить?
Valera вне форума Ответить с цитированием
Старый 21.04.2011, 17:18   #7
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

добавить строку:

Код:
result := 'Динамо-Киев — Чемпион!';
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 21.04.2011, 17:18   #8
was3110
Форумчанин
 
Аватар для was3110
 
Регистрация: 25.04.2010
Сообщений: 254
По умолчанию

Код:
function TFClub.ShowTable(fclub:TFClub):stri ng;
var
a:integer;
b:string;
begin
if fclub.sezon
then


a:=fclub.w +fclub.dr;
b:=IntToStr(a);
result:=b;
end;
тогда функция будет возвращать эту строку...
помогать студентам - моя вторая профессия
was3110 вне форума Ответить с цитированием
Старый 22.04.2011, 09:38   #9
Valera
Пользователь
 
Регистрация: 23.06.2008
Сообщений: 86
По умолчанию

Спасибо, уже добавил
Valera вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ объекты и классы Шиншилка Помощь студентам 9 22.04.2011 20:19
Классы, объекты,поля объектов Mr_skiner Общие вопросы Delphi 9 10.03.2011 23:07
Инкапсуляция. Классы и их компоненты. Объекты gessi Общие вопросы C/C++ 0 09.09.2010 16:05
TurboPascal: объекты и классы, прямоугольник с рамочкой ulala Помощь студентам 0 05.11.2009 17:28
TurboPascal: объекты и классы ulala Помощь студентам 1 28.10.2009 17:20