Нажатием на Button мы переключаемся на вкладку TabItem2 и вызываем поток.
Внутри потока в процедуре Synchronize мы переключаемся обратно на вкладку TabItem1.
procedure ThreadSending.Sync;
begin
f.TabControl1.GotoVisibleTab(0, TTabTransition.Slide,
TTabTransitionDirection.Reversed);
end;
procedure ThreadSending.Execute;
begin
try
finally
Synchronize(Sync);
end;
end;
Проблема в том, что если тип анимации стоит "TTabTransition.Slide", то с очень высокой вероятностью вкладка не будет переключена, а останется на той же где и была. Более того, если на этой вкладки были компонеты с анимацией, то они залипают, т.е. анимация останавливается.
А если изменить на "TTabTransition.None" то все отрабатывает как часы.
Вопрос
brunnengi
Здравствуйте.
Дано:
-TTabControl
∟TabItem1
∟Button1
∟TabItem2
Нажатием на Button мы переключаемся на вкладку TabItem2 и вызываем поток.
Внутри потока в процедуре Synchronize мы переключаемся обратно на вкладку TabItem1.
Проблема в том, что если тип анимации стоит "TTabTransition.Slide", то с очень высокой вероятностью вкладка не будет переключена, а останется на той же где и была. Более того, если на этой вкладки были компонеты с анимацией, то они залипают, т.е. анимация останавливается.
А если изменить на "TTabTransition.None" то все отрабатывает как часы.
Как побороть этот недуг?
Ссылка на комментарий
1 ответ на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.