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

Програмно выбрать закладку в TPageСontrol   Найти похожие ветки 

 
solenko ©   (2006-05-24 15:55) [0]

Здрастствуйте!
Подскажите как програмно выбрать закладку в TPageControl. SelctNextPage почему-то не работает. Может из-за того, что пытаюсь изменить из обработчика onChenge другой вкладки?


 
Loginov Dmitry ©   (2006-05-24 16:06) [1]

ActivePage?


 
Elen ©   (2006-05-24 16:07) [2]

А что у тебя прописано в OnChange?


 
solenko ©   (2006-05-24 16:11) [3]

Loginov Dmitry, не работает.

Elen:

if (edit1.text = "") or (edit2.Text = "") or (edit3.Text = "") or (edit4.Text = "") then
 begin
   Application.MessageBox("Сначала необходимо заполнить все поля на вкладке *Общие данные*!","Ошибка!", MB_ICONERROR);
//    PageControl1.ActivePageIndex := 0;
   PageControl1.SelectNextPage(true);
   exit;
 end;


 
Elen ©   (2006-05-24 16:25) [4]

PageControl1.SelectNextPage(true);
Проверь в Дебуге доходит ли прога до этой строки? Поставь точку прерывания


 
solenko ©   (2006-05-24 16:27) [5]

Доходит


 
Elen ©   (2006-05-24 16:33) [6]

замени
PageControl1.SelectNextPage(true);
на
PageControl1.activePageIndex:=PageControl1.activePageIndex+1
и не забудь проверить последняя ли это страница


 
solenko ©   (2006-05-24 16:40) [7]

Уже пробовал. Мне не обязательно на последнюю страницу перейти (как раз нааборот на первую с последней) пробовал 3 варианта:

PageControl1.activePageIndex :=0;
PageControl1.SelectNextPage(true);
PageControl1.ActivePage := TabSheet1;

Ни один не работает.


 
solenko ©   (2006-05-24 16:42) [8]

Забыл сказать... пробовал устанавливать фокус на контрол, который находится на первой странице. После любого из вариантов устанавливается нормально, а вот если не изменять вкладку то ругается "не могу установить фокус невидимому компоненту". Т.е. страница 1 как бы становится активна, но отображается все равно страница 2.


 
Vlad ©   (2006-05-24 16:49) [9]


> solenko ©   (24.05.06 16:42) [8]


Событие OnChanging
не даешь уйти с Tabsheet"a до тех пор пока не будут заполнены необходимые поля:

AllowChange := false;

(если я правильно понял что нужно сделать)


 
solenko ©   (2006-05-24 16:53) [10]

Vlad, понял абсолютно правильно. Спасибо.



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

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



Память: 0.47 MB
Время: 0.033 c
15-1148043039
Nikolga
2006-05-19 16:50
2006.06.11
Ищем программиста Delphi


4-1136633780
workdisk450
2006-01-07 14:36
2006.06.11
Как использовать нестандартный шрифт, не устанавливая его?


1-1146100720
vidiv
2006-04-27 05:18
2006.06.11
Как быстро экспортировать RichEdit в свой формат?


2-1148390088
rra
2006-05-23 17:14
2006.06.11
Заполнение DBLookupComboBox a из поля таблицы...


6-1139003480
newprogrammer
2006-02-04 00:51
2006.06.11
сервер на базе winsock2




   Наверх