Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
| Shmaniche |
1.12.2012 8:57
Сообщение
#1
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 79 Пол: Мужской Репутация: 0 |
На форме компоненты Memo1 и MainMenu, где созданы подпункты TMenuItem.
В учебнике нашел процедуру: Код procedure TForm1.Put(Sender: TObject); begin Memo1.Text:=Memo1.Text+(Sender as TMenuItem).Caption; end; Из-за которой не компилируется проект. Поразмыслил понял, что это самодельная процедура. Ее заголовок я прописал после Private, т.е.: Код private { Private declarations } procedure TForm1.Put(Sender: TObject); public { Public declarations } end; Но проект все равно не компилируется. "[Pascal Error] Mainunit.pas(43): E2003 Undeclared identifier: 'TForm1'" Name формы: Form1. Может не так добавляю? Када правильно писать заголовки самодельные процедур? Нашел пример объявления кода: Код unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private procedure HeCoBCemTak(Sender:Tobject); { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.HeCoBCemTak(Sender:Tobject); begin application.MessageBox('CoBceMheTak','HeCoBcemTak',MB_YESNO) end; procedure TForm1.FormCreate(Sender: TObject); begin Form1.HeCoBCemTak(Form1); end; end. Делаю все также, но не компилируется Сообщение отредактировано: Shmaniche - 1.12.2012 9:12 |
![]() ![]() |
| Shmaniche |
8.12.2012 20:45
Сообщение
#2
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 79 Пол: Мужской Репутация: 0 |
IUnknown
Фрагменты: Код type TAnimal = class(TObject) private { Private declarations } Kind: string; public { Public declarations } constructor Create; function GetKind: string; virtual; function Voice: string; virtual; function Eat: string; virtual; .... {там есть еще виртуальные функции-методы для пород собак} end; Код TDog = class(TAnimal) public constructor Create; function GetKind: string; override; function Voice: string; override; function Eat: string; override end; Код TCat = class(TAnimal) public constructor Create; function GetKind: string; override; function Voice: string; override; function Eat: string; override; end; Код TSheepDog = class(TAnimal) public constructor Create; function GetRace: string; override; function Stature: string; override; function LengthHair: string; override; function LengthEar: string; override; function LengthInfluence: string; override; end; И все таком духе. Сообщение отредактировано: Shmaniche - 8.12.2012 20:46 |
Shmaniche Простой вопрос 1.12.2012 8:57
мисс_граффити когда описываешь метод объекта, название класса (в... 1.12.2012 12:23
Shmaniche Спасибо, мисс граффити. :give_rose: 1.12.2012 14:09
IUnknown Shmaniche, я тебе уже написал, что только этого не... 1.12.2012 16:29
мисс_граффити ну вопрос был "почему не компилируется и руга... 2.12.2012 1:51
Shmaniche IUnknow
Я свой вопрос задавал в двух форумах и не ... 5.12.2012 8:38
TarasBer Ты модуль подключил в implementation а определения... 5.12.2012 10:24
Shmaniche TarasBer
1. Модуль в implementation главного модул... 5.12.2012 10:36
Shmaniche Как думаете надо ли создавать деструкторы для ... 8.12.2012 19:36
IUnknown А чего нам-то думать об этом? Ты написал код, ты и... 8.12.2012 20:31
TarasBer Внутри конструктора что написано?
И да, надо писат... 9.12.2012 10:41![]() ![]() |
|
Текстовая версия | 3.11.2025 12:14 |