Вниз
Скачать: 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.052 c
2-1273576150
noob_one
2010-05-11 15:09
2010.08.27
Variant как массив.


15-1271746918
JohnKorsh
2010-04-20 11:01
2010.08.27
4 ядра в XP SP3.


15-1268343373
DillerXX
2010-03-12 00:36
2010.08.27
подскажите, что за БД?


10-1166152424
Grain
2006-12-15 06:13
2010.08.27
Excel и Windows 2000


2-1268812490
Вася
2010-03-17 10:54
2010.08.27
Как узнать, существует ли компонент?




   Наверх