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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2013, 16:40   #1
программирование
Форумчанин
 
Регистрация: 22.04.2013
Сообщений: 162
Восклицание проект реализующий связь двух классов, метод голос. Делфи 7. (есть код программы)

добрый день, уважаемые программисты. помогите, пожалуйста, составить два куска программы в один.

вот задание:
Создать проект, реализующий связь двух классов Животные и Собаки, а также придать им новый метод ГОЛОС. (В форме должно быть кнопка ЗВУК, что позволяет вывести на форму сообщения MyAnimal.Voice)


вот отрывок кода КЛАССА ЖИВОТНЫЕ:
PHP код:
type
  TFormAnimals 
= class(TForm)
    
LabelVoiceTLabel;
    
BtnVoiceTButton;
    
RbtnAnimalTRadioButton;
    
RbtnDogTRadioButton;
    
procedure FormCreate(SenderTObject);
    
procedure FormDestroy(SenderTObject);
    
procedure BtnVoiceClick(SenderTObject);
    
procedure RbtnAnimalClick(SenderTObject);
    
procedure RbtnDogClick(SenderTObject);
  private
    
MyAnimalTAnimal;
  
end
отрывок кода КЛАССА СОБАКИ:
PHP код:
type
  TAnimal 
= class
  public
    
constructor Create;
    function 
GetKindstring;
    function 
Voicestringvirtual;
  private
    
Kindstring;
  
end;
 
  
TDog = class (TAnimal)
  public
    
constructor Create;
    function 
Voicestringoverride;
  
end;

uses
  MMSystem
;

function TAnimal.Voicestring;
begin
  Voice 
:= 'Voice of the animal';
  
PlaySound ('Anim.wav'0snd_Async);
end;

function TDog.Voicestring;
begin
  Voice 
:= 'Arf Arf';
  
PlaySound ('dog.wav'0snd_Async);
end
я не понимаю как эти два отрывка можно совместить в одну программу. нам дали эти отрывки и задание.

заранее огромное спасибо всем за помощь.
программирование вне форума Ответить с цитированием
Старый 08.10.2013, 17:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ты же создавал(а)(о) уже такую тему, где давались наметки на то что нужно сделать.
Зачем кросспостить?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.10.2013, 18:55   #3
программирование
Форумчанин
 
Регистрация: 22.04.2013
Сообщений: 162
Вопрос помогите, пожалуйста.

Stilet, вы следите за тем, что я пишу?

вы не могли бы мне помочь разобраться в задании.
программирование вне форума Ответить с цитированием
Старый 08.10.2013, 20:38   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
вы следите за тем, что я пишу?
Ты даже не представляешь насколько внимательно: http://www.programmersforum.ru/showthread.php?t=244486

Теперь по теме:
Код:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses      MMSystem,
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type
  { TAnimal }

  TAnimal = class
 public
   constructor Create;
   function GetKind: string;
   function Voice: string; virtual;
 private
   Kind: string;
 end;

 { TDog }

 TDog = class (TAnimal)
 public
   constructor Create;
   function Voice: string; override;
 end;
  { TForm1 }

  TForm1= class(TForm)
    BtnVoice: TButton;
    LabelVoice: TLabel;
    RbtnAnimal: TRadioButton;
    RbtnDog: TRadioButton;
    procedure BtnVoiceClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure RbtnAnimalChange(Sender: TObject);
    procedure RbtnDogChange(Sender: TObject);
  private
    animal:TAnimal;
    dog:TDog;
    { private declarations }
  public
    { public declarations }
  end;


  var
  Form1: TForm1;

implementation

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
begin
 animal:=TAnimal.Create; dog:=TDog.Create;
end;

procedure TForm1.BtnVoiceClick(Sender: TObject);
begin
  //
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  animal.Free;
  dog.Free;
end;

procedure TForm1.RbtnAnimalChange(Sender: TObject);
begin
  animal.Voice;
end;

procedure TForm1.RbtnDogChange(Sender: TObject);
begin
  dog.Voice;
end;

{ TDog }

constructor TDog.Create;
begin

end;

function TDog.Voice: string;
begin
  Result:=inherited Voice;
  Voice := 'Arf Arf';
  PlaySound ('dog.wav', 0, snd_Async);
end;

{$R *.lfm}

{ TAnimal }

constructor TAnimal.Create;
begin

end;

function TAnimal.GetKind: string;
begin

end;

function TAnimal.Voice: string;
begin
    Voice := 'Voice of the animal';
  PlaySound ('Anim.wav', 0, snd_Async);
end;

end.
Легче стало? Тебе остается сущий пустяк - использовать то что я написал.
И предупреждаю - следующий кросспост по этой же теме будет удален. Хочешь продолжать тему - пиши в эту.
I'm learning to live...

Последний раз редактировалось Stilet; 08.10.2013 в 20:40.
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вставить кнопки в программу Делфи 7 (есть правильный код программы) программирование Помощь студентам 0 06.10.2013 19:50
проверяет пароль при открытие формы, движение рисунка Делфи 7 (есть код программы. нужен другой вариант) программирование Помощь студентам 3 29.09.2013 15:47
Создать проект, реализующий связь двух классов Животные и Собаки, а также придать им новый метод ГОЛОС (Делфи 7) программирование Помощь студентам 3 24.09.2013 21:36
нахождение высокосного года, сезона года и к-ва дне с начала года Делфи 7 (есть код программы полностью) программирование Помощь студентам 22 22.09.2013 23:59