|
Вопрос # 6 020/ вопрос решён / |
|
Здравствуйте, уважаемые эксперты!
Пытаюсь разобраться с динамическими формами и событиями. Вот пример создания дин. формы с 25 кнопками и соответствующей им процедурой обработки нажатия клика. форма создается и запускается при нажатии на батон. Компилится нормально, но вылетает ошибка Eresnotfound. {$R *.dfm} вроде есть. Наверняка ошибка банальна, ибо до конца не понимаю процесс присвоения событий дин. формы. Заранее спасибо за советы)
Приложение: Переключить в обычный режим- unit Unit1;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls;
-
- type
- TForm1 = class(TForm)
- Button1: TButton;
- procedure Button1Click(Sender: TObject);
-
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
- TTestForm = class(TForm)
- procedure FormCreate(Sender:TObject);
- private
- procedure OwnButtonClick(Sender:TObject);
- end;
- var
- Form1: TForm1;
- TestForm: TTestForm;
- implementation
-
-
-
- {$R *.dfm}
- procedure TTestForm.FormCreate (Sender : TObject);
- var i, j : integer;
- begin
- for i := 0 to 4 do
- for j := 0 to 4 do
- with TButton.Create (Self) do
- begin
- Caption := Format ('Button %d %d', [i, j]);
- Top := 100 + 30 * i;
- Left := 100 + 90 * j;
- Width := 80;
- Height := 25;
- OnClick := OwnButtonClick;
- Parent := Self;
- end;
- end;
- procedure TTestForm.OwnButtonClick (Sender : TObject);
- begin
- ShowMessageFmt ('Íàæàòà
êíîïêà %s', [TButton (Sender).Caption]);
- end;
- procedure TForm1.Button1Click(Sender: TObject);
- begin
- TestForm:=TTestForm.Create(nil);
- TestForm.show;
-
- end;
-
- end.
-
 |
Вопрос задал: Korsv (статус: Посетитель)
Вопрос отправлен: 23 марта 2012, 04:29
Состояние вопроса: решён, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 1; последнее сообщение — 23 марта 2012, 08:14; участников в обсуждении: 1.
|
min@y™ (статус: Доктор наук), 23 марта 2012, 08:14 [#1]:
Тебе ж пишут EResNotFound. Не найден ресурс в *.dfm-файле. А ресурс ищется там вот такой:
object TestForm: TTestForm
Поэтому убери нафиг глобальную переменную TestForm: либо сделай её локальной, либо перенеси весь класс TTestForm в другой модуль.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
24 марта 2012, 23:50: Статус вопроса изменён на решённый (изменил автор вопроса — Korsv)
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|