Вниз
Скачать: CL | DM;

пожалуйста скажите что не так   Найти похожие ветки 

← →
Dy1   (2008-09-14 01:01) [0]

procedure TForm1.butAddClick(Sender: PObj);
var  f, butOK, Ename: PControl;

procedure Click(d, Sender: PObj);
var i: integer;
begin
i := LV.LVItemAdd(Ename.Text); // AV. Как правильно?
end;

begin
f := NewForm(Applet, "Добавление/редактирование записи").SetSize(400,300);
f.ExStyle := f.ExStyle or WS_EX_DLGMODALFRAME or WS_EX_WINDOWEDGE;
f.Style := f.Style and not (WS_MINIMIZEBOX or WS_MAXIMIZEBOX);
Ename := NewEditbox(f, []).SetSize(145, 22);
butOK := NewButton(f, "OK").PlaceRight.SetSize(64, 23);
butOK.OnClick := TOnEvent( MakeMethod(nil, @Click));
f.ShowModal;
Ename.Free;
butOK.OnClick := nil;
butOK.Free;
f.Free;
end;


← →
vampir_infernal   (2008-09-14 12:27) [1]

объект LV вы создаёте?


← →
Compiler ©   (2008-09-14 20:52) [2]

> Ename.Free;
> butOK.OnClick := nil;
> butOK.Free;

Лишнее


← →
Dy1   (2008-09-14 21:22) [3]

LV есть. МСКшный


← →
Dy1   (2008-09-14 21:23) [4]

забыл сказать, что Add2Autofree или как там его - AV в этом коде. KOLnMCK 2.86 и 2.87+


← →
Дмитрий К ©   (2008-09-14 22:46) [5]


> что не так

то, что локальная процедура метода TForm1 используется как обработчик события другого объекта


← →
Dy1   (2008-09-15 16:24) [6]

а КАК правильно? Это и был вопрос. При выносе Click не видится Ename, а глобальным делать не хочу


← →
Дмитрий К ©   (2008-09-15 16:42) [7]

Ну сделай так:
procedure TForm1.BtnAddClick(Sender: PObj);
var f, butOK, Ename: PControl;

procedure Click(D: PControl; Sender: PObj);
var i: integer;
begin
i := Form1.LV.LVItemAdd(D.Text);
end;

begin
 f := NewForm(Applet, "Добавление/редактирование записи").SetSize(400,300);
 Ename := NewEditbox(f, []).SetSize(145, 22);
 butOK := NewButton(f, "OK").PlaceRight.SetSize(64, 23);
 butOK.OnClick := TOnEvent(MakeMethod(Ename, @Click));
 f.ShowModal;
 f.Free;
end;

только это тоже не совсем правильно, хотя работает.


← →
Dy1   (2008-09-22 17:33) [8]

там 5 компонентов. butOK, Ename и остальное вынес в глобал. Не нравится, зато работает



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.044 c
2-1270722524
Учащийся
2010-04-08 14:28
2010.08.27
перевести Integer в Char, String в Char


15-1275383564
boriskb
2010-06-01 13:12
2010.08.27
Образование в СССР


2-1268820037
oleg1963lora
2010-03-17 13:00
2010.08.27
TimeToStr. Изменение FormatSettings


15-1269865652
И. Павел
2010-03-29 16:27
2010.08.27
Проблема с кодировками в Vista


15-1273548240
Учащийся
2010-05-11 07:24
2010.08.27
Схемы хранения матриц.




   Наверх