slava_d2000 Опубликовано 21 июня, 2015 Поделиться Опубликовано 21 июня, 2015 Есть код класса отображения Itema. type TNode = class(TTreeViewItem) public constructor Create(Owner: TComponent; const aText: integer; const aImageFileName: String); reintroduce; destructor Destroy; override; procedure Timer1Timer(Sender: TObject); private i: integer; T: TTimer; end; procedure TNode.Timer1Timer(Sender: TObject); begin i := i + 1; if (i>360) then i :=0; Self.StylesData['button1style.Text'] := IntToStr(i); end; destructor TNode.Destroy; begin inherited; T.Enabled :=False; T.Free; Showmessage('g'); end; constructor TNode.Create(Owner: TComponent; const aText: integer; const aImageFileName: String); begin inherited Create(Owner); Self.StyleLookup := 'layout1style'; Self.Height := 60; Self.StylesData['button1style.Text'] := '0'; Self.StylesData['button2style.Text'] := IntToStr(aText); i :=0; T := TTimer.Create(Owner); T.Interval :=50; T.OnTimer := Timer1Timer; T.Enabled := true; end; в стиле воткнуто 2 кнопки. в форме кнопка которая добавляет строку в TreeView Node := TNode.Create(TreeView1, TreeView1.Count, ''); TreeView1.AddObject(Node); Node.Select; если запустить на компьютере то все нормально работает у каждой кнопке таймер срабатывает и идет пересчет, если запустить на андроиде. до 32 позиции все нормально работает. начиная с 32, item добавляется, кнопки видны, но таймер не работает. Цитата Ссылка на комментарий
0 slava_d2000 Опубликовано 25 июня, 2015 Автор Поделиться Опубликовано 25 июня, 2015 Я так понимаю что это БАГ FIREMONKEY ????????? Цитата Ссылка на комментарий
0 kami Опубликовано 26 июня, 2015 Поделиться Опубликовано 26 июня, 2015 В первую очередь - это жесть, делать кучу таймеров, занимая ресурсы системы, когда вполне достаточно одного. Цитата Ссылка на комментарий
0 slava_d2000 Опубликовано 26 июня, 2015 Автор Поделиться Опубликовано 26 июня, 2015 Ну я же не о том................. Сделал тест. получил результат. Хочу разобратся, мои косые ручки, либо баги FIREMONKEY Цитата Ссылка на комментарий
0 kami Опубликовано 26 июня, 2015 Поделиться Опубликовано 26 июня, 2015 (изменено) Вполне возможно - это ограничение Android на количество занимаемых системных ресурсов. После активации таймера проверьте его свойство Enabled - если таймер не удалось создать, оно будет False. Но это не отменяет моего предыдущего высказывания - куча таймеров является абсолютно излишней. Это некорректное проектирование приложения. Изменено 26 июня, 2015 пользователем kami Цитата Ссылка на комментарий
Вопрос
slava_d2000
Есть код класса отображения Itema.
в стиле воткнуто 2 кнопки.
в форме
кнопка которая добавляет строку в TreeView
если запустить на компьютере то все нормально работает у каждой кнопке таймер срабатывает и идет пересчет,
если запустить на андроиде.
до 32 позиции все нормально работает.
начиная с 32, item добавляется, кнопки видны, но таймер не работает.
Ссылка на комментарий
4 ответа на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.