Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Устранение бликов 
V
    Опции темы
chip_and_dayl
Дата 13.12.2011, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 603
Регистрация: 22.4.2007
Где: Украина, Киев

Репутация: 1
Всего: 9



Есть на форме ScrollBox.  При запуске программы в ScrollBox'e каждые 10  секунд строятся панели TPanel.  

Вопрос. Как можно устранить блики при  построение панелей!?!

user posted image


--------------------
Фсё будет хорошо!!!
PM MAIL Skype   Вверх
Snowy
Дата 13.12.2011, 14:59 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



1. У ScrollBox выставить DoubleBuffered := true;
2. Сначала расположить все контролы на панелях, а потом выкладывать панель на Parent
PM MAIL   Вверх
chip_and_dayl
Дата 13.12.2011, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 603
Регистрация: 22.4.2007
Где: Украина, Киев

Репутация: 1
Всего: 9



Выполнил п1,  частично мерцание пропало.

Пункт 2 был выполнен, на самом деле у меня в ScrollBox не панели,  а фреймы, которые  содержат  панели. А на фреймах уже все заранее расположено


--------------------
Фсё будет хорошо!!!
PM MAIL Skype   Вверх
MetalFan
Дата 13.12.2011, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



Цитата

Блик — элемент светоте́ни — световое пятно на ярко освещённой выпуклой или плоской глянцевой поверхности. Возникает вследствие зеркального или зеркально-диффузного отражения яркого источника света, чаще всего солнца, на предмете.

И что такое у автора бликует? может таки моргает или мерцает?))

Цитата(chip_and_dayl @  13.12.2011,  14:15 Найти цитируемый пост)
При запуске программы в ScrollBox'e каждые 10  секунд строятся панели TPanel. 

Оптимизируй алгоритм. Эт какойто бред, каждые 10 секунд пересоздавать оконные элементы.


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
chip_and_dayl
Дата 13.12.2011, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 603
Регистрация: 22.4.2007
Где: Украина, Киев

Репутация: 1
Всего: 9



Цитата

И что такое у автора бликует? может таки моргает или мерцает?))

Cкорее подмигивает:)

Код

Оптимизируй алгоритм. Эт какойто бред, каждые 10 секунд пересоздавать оконные элементы.

Сначала бог  создал   Землю, а потом...
Вот так и  я,  сначала создал  алгоритма, который создает  эти  карточки при  запуске программы,  так
как  писать алгоритм,  который будет все  не пересоздавать, а обновлять  нет времени, поэтому  для временного решения
было решено  не обновлять  а все  создавать  с нуля. 

Хотя с учетом  того, чтобы делать   рефреш нужно много чего производить, основная загвоздка в том, если изменится карточка,  а в ее изменение входит и изменение размера,  нужно делать сдвиг  для всех карточек +  поиск карточки которую  нужно  апдейтить + получение обновляемой инфы, все  в сумме 
я думаю будет равнятся полному созданию карточек

Добавлено @ 17:15
Ну и главное, в скорости  проблемы нет.  Разве что  можно ускорить мерцание, чтобы не было  человеческому глазу заметно  О:)

Это сообщение отредактировал(а) chip_and_dayl - 13.12.2011, 17:16


--------------------
Фсё будет хорошо!!!
PM MAIL Skype   Вверх
MetalFan
Дата 14.12.2011, 12:26 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



Цитата(chip_and_dayl @  13.12.2011,  17:10 Найти цитируемый пост)
все  в сумме 
я думаю будет равнятся полному созданию карточек

Ничего подобного. Пересоздание оконного компонента съест больше ресурсов. Из-за того и мерцание.

Цитата(chip_and_dayl @  13.12.2011,  17:10 Найти цитируемый пост)
основная загвоздка в том, если изменится карточка,  а в ее изменение входит и изменение размера,  нужно делать сдвиг  для всех карточек

Ну так это вообще можно отдать на откуп стандартным компонентам.
у панелей поставить Align = alTop. И все, при изменении высоты любой карточки остальные автоматически "подстроются")

Ну да хозяин-барин.

на худой конец, дельный совет уже был:
Цитата(Snowy @  13.12.2011,  14:59 Найти цитируемый пост)
2. Сначала расположить все контролы на панелях, а потом выкладывать панель на Parent 




--------------------
There are always someone smarter than you...
PM MAIL   Вверх
chip_and_dayl
Дата 15.12.2011, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 603
Регистрация: 22.4.2007
Где: Украина, Киев

Репутация: 1
Всего: 9





--------------------
Фсё будет хорошо!!!
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0485 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.