Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.05;
Скачать: CL | DM;

Вниз

Ошибка при работе с ListEdit   Найти похожие ветки 

 
KisaNetik   (2004-03-23 02:23) [0]

При втором вызове конструктора, возникает ошибка!!! Всё остальное работает нормально, но ошибка типа Exception возникает при втором вызове конструктора.... Пишу так:
 sg3:=NewListEdit(Group3,lvsDetail,[lvoEditLabel,lvoTrackSelect,lvoOneClickActivate,lvoRowSelect,lvoFlatSB,lvoUnderLineHo t,lvoMultiWorkares],nil,nil,nil);

Group3 - GroupBox распологаемый на F (см. ниже...)

Затем при закрытии созданной формы пишу так:
F2.F.Close;
F2.F.Free;

F2 - Тип с формой
F - Сама форма...

При первом вызове конструктора формы всё номана, но при втором возникает ошибка!!!! В чём проблема??? Помогите пожалуйста кто знает...


 
Dimaxx ©   (2004-03-24 00:12) [1]

Попробуй сначала убить ЛистЕдит, а потом все остальное.


 
Владимир Кладов   (2004-03-24 05:02) [2]

Для MCK-формы Close = Free. Получается повторная попытка освободить уже освобожденную память.


 
KisaNetik   (2004-03-25 11:20) [3]

Форма не МСК а KOL ! Тип создаан
type QEForm=record
  F: PControl;
  Group1,
  Group2,
  Group3,
  Group4:TKolGroupBox;
  bOKG1,
  bOKG2,
  bDelG1,
  bDelG2,
  bDelG3,
...........
 lb1:TKOLListListBox
end ;
var
F:QEForm;

procedure QECreate(AOwner:PControl);
begin
With F2 do
begin
 F:=NewForm(AOwner,"Редактор вопросов").SetSize(470,456);
 F.SetPosition(Form1.form.Left+30,Form1.Form.Top+50);
 f.Style := WS_BORDER or WS_SYSMENU or WS_VISIBLE;
 lb1:=NewlistBox(Group1,[loNoHideScroll,loNoExtendSel]).SetPosition(5,60).SetSize(212,140);lb1.Color:=clWhite;
.........
 F.ShowModal;
 F.Free;
end;
end;

Ошибка возникает не при попытке освободить память формы, выскакивает и убивает всю прогу при повторном создании даной формы, она даже не создаётся и не успевает доходить до F.Free, так-что это по моему не в высвобождении формы из памяти..., сперва мне показалось что не высвободился ListBox ... Поскольку ошибка при отладке возникает именно на строке
lb1:=NewlistBox(Group1,[loNoHideScroll,loNoExtendSel]).SetPosition(5,60).SetSize(212,140);lb1.Color:=clWhite;
при повторном вызове, что и есть странно, при первом вызове всё OK!

Вот такая беда, а решить как-то надо... Может кто знает как???


 
KisaNetik   (2004-03-25 11:23) [4]

извените, написал ListBox, а надо ListEdit

sg3:=NewListEdit(Group3,lvsDetail,[lvoEditLabel,lvoTrackSelect,lvoOneClickActivate,lvoRowSelect,lvoFlatSB,lvoUnderLineHo t,lvoMultiWorkares],nil,nil,nil);
 sg3.SetPosition(5,17);sg3.SetSize(370,110);

и то-же самое при обьявлении:
lb1:TKOLListEdit;

Вот на создании именно этого при втором вызове и возникает Exception



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

Текущий архив: 2004.09.05;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.04 c
14-1092804127
olookin
2004-08-18 08:42
2004.09.05
Может ли стандартный компьютер быть двухпроцессорным?


10-1034843956
rex
2002-10-17 12:39
2004.09.05
Как отработать удаленную процедуру в тонком клиенте ?


4-1089938347
Xerx
2004-07-16 04:39
2004.09.05
Написание драйвера


14-1092463001
KSergey
2004-08-14 09:56
2004.09.05
Про местный чат


14-1092386962
Layner
2004-08-13 12:49
2004.09.05
Чечня начала завоевание Европы