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

Уничтожение кнопки в OnClick   Найти похожие ветки 

← →
Sandman25 ©   (2003-10-07 13:32) [0]

Доброе время суток.

В обработчике кнопки я пересоздаю интерфейс, для этого мне необходимо удалить фрейм, на котором находится нажатая кнопка.
Делаю так:
procedure TfrSettings.Button1Click(Sender: TObject);
var
OldName: string;
begin
with fMain do
begin
OldName := tcTasks.Tabs[tcTasks.TabIndex];
Hide;
Init;
// tcTasks.TabIndex := tcTasks.Tabs.Count - 1;
Show;
if tcTasks.TabIndex >= 0 then
if tcTasks.Tabs[tcTasks.TabIndex] <> OldName then
DeInitFrameSettings;
end;
end;

Но после этого обрабатывается событие WM_LMOUSE_UP, а так как кнопки уже нет (если выбрана другая страничка TabControl"а), то происходит то AbstractError, то AccessViolation.

Что можно сделать?


← →
ZEE ©   (2003-10-07 13:35) [1]

PostMessage(Button1.Handle,CM_RELEASE,0,0);


← →
Sandman25 ©   (2003-10-07 13:39) [2]

[1] ZEE © (07.10.03 13:35)

Вставил эту строчку сразу после Show, не помогает :(
Все равно AbstractError, а в стеке стоят:
AbstractErrorHandler
@AbstractError
TControl.WMLButtonUp((514, 0, 111, 19, (111, 19), 0))
TControl.WndProc((514, 0, 1245295, 0, 0, 0, 111, 19, 0, 0))
TWinControl.WndProc((514, 0, 1245295, 0, 0, 0, 111, 19, 0, 0))
TButtonControl.WndProc((514, 0, 1245295, 0, 0, 0, 111, 19, 0, 0))
TWinControl.MainWndProc((514, 0, 1245295, 0, 0, 0, 111, 19, 0, 0))
StdWndProc(330466,514,0,1245295)
TApplication.HandleMessage
TApplication.Run


← →
Skier ©   (2003-10-07 13:41) [3]


> В обработчике кнопки я пересоздаю интерфейс, для этого мне
> необходимо удалить фрейм, на котором находится нажатая кнопка.
>

Зачем же его удалять-то ?

PostMessage(Frame.Handle,WM_CLOSE,0,0);


← →
Sandman25 ©   (2003-10-07 13:43) [4]

>Зачем же его удалять-то ?

Экономлю оперативную память. Попробую с Close. Этот фрейм маленький, пускай сидит :)


← →
Sandman25 ©   (2003-10-07 13:48) [5]

Все, всем спасибо. Уже фрейм не удаляю.



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

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



Память: 0.46 MB
Время: 0.01 c
3-65394
AccessHelp
2003-09-26 18:30
2003.10.20
Access


1-65434
Дмитрий
2003-10-07 15:13
2003.10.20
Подключить dll для перевода текста


11-65403
_Vadim
2003-02-05 14:28
2003.10.20
Значения по умолчанию


1-65536
Raduga
2003-10-08 09:28
2003.10.20
вызов инспектора объектов в своей программе


7-65660
AlexRush
2003-08-04 15:24
2003.10.20
NTFS ADS (Alternative Data Streams) - поиск




   Наверх