Форум: "Основная";
Текущий архив: 2002.08.19;
Скачать: [xml.tar.bz2];
Внизкак программно запретить переключение между страницами PageContro Найти похожие ветки
← →
billybons (2002-08-08 07:50) [0]Существует ли способ для сабжа ? TabSheet1.Enabled переключение не запрещает :(
← →
ЮЮ (2002-08-08 07:54) [1]TTabControl.OnChanging
← →
ЮЮ (2002-08-08 08:02) [2]procedure TForm1.PageControl1Changing(Sender: TObject;
var AllowChange: Boolean);
begin
//запоминаем где были
if PageControl1.ActivePage.Enabled
then PageControl1.tag:=PageControl1.TabIndex;
end;
procedure TForm1.PageControl1Change(Sender: TObject);
begin
//возвращам туда, откуда пытались прийти
if not PageControl1.ActivePage.Enabled
then PageControl1.ActivePage:=PageControl1.Pages[PageControl1.tag]
end;
← →
billybons (2002-08-08 08:10) [3]Да нет , хотелось бы по включению режима редактирования на одной закладке сделать невозможным переключение на другую. Пока ничего умнее , кроме как преключать остальные TabSheet-ы Visible в false , не придумал, а хотелось бы чтоб они оставались видны, но переключение на них было бы невозможно.
← →
billybons (2002-08-08 08:13) [4]
> ЮЮ
аааа , извини, сразу не вЪехал
← →
Юрий Зотов (2002-08-08 08:30) [5]Странный какой-то способ, уж извините...
Из справки:
Set the AllowChange parameter to False to prevent the change.
То есть:
procedure TForm1.PageControl1Changing(Sender: TObject;
var AllowChange: Boolean);
begin
AllowChange := not Включен_режим_редактирования
end;
И больше ничего не нужно.
← →
billybons (2002-08-08 08:40) [6]
> Юрий Зотов
благодарю
← →
ЮЮ (2002-08-08 08:52) [7]>Странный какой-то способ, уж извините...
Этот способ не позволяет входить на TabSheet-ы, у котрых Enabled=False. О чем и спрашивалось первоначально. Это при детализации выяснилось, что нужно совсем другое. Отсюда и странности.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.19;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c