![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Здравствуйте, это мой первый post в Форуме, привет, я из Боливии - Юг Америка.
У следующего кода есть эффект рисования текста в движении на любом объекте TForm; этот функционирует верно, но если я ввожу TImage фона (background) TForm, Delphi показывает мне ошибку на этой линии: Border: = BorderWidth + 3; ERROR raised exception EAccess Violation Код:
. Код:
Я разместил TPanel такую (собственность Align=AllClient) как фон TForm'a и этот в свою очередь содержит TImage (собственность Align=AllClient; stretch=true), эффект работает нормально но медленнo, и у него есть проблема с перекрашенным, а именно очевидно много МИГАНИЕ, и медленнo. Mне нужно в том, чтобы разместить в этом коде TImage как фон в TForm и также мне нужно, чтобы оно функционировало без миганий, Как? Как решать и предотвращать это Мигание после того, когда повторно рисовано? Как решать это без миганий? Мигание, Мигание....... The following code has a effect to redraw a text in movement on any object of the TForm; this it works perfectly, but if I introduce a TImage in background TForm's, Delphi shows me an error in this line: Border: = BorderWidth + 3 ERROR raised exception EAccess Violation As Beginner I have tried to solve this way: I have placed a TPanel (property Align=AllClient) as background of the Form and east in turn contains the TImage (property Align=AllClient; stretch= true), the one effect works normal but slowly, and it has a problem with the one repainted, that is to say a lot of TWINKLING (BLINKKINGS) and slowly. I need to place in this code a background TImage in the TForm and I need that it works without twinklings, How? How to solve and without blinkings to the redraw, please? Последний раз редактировалось Deiv, 10.11.2008 в 01:43. |
#2
|
|||
|
|||
![]() Боюсь вас огорчить, но насколько мне известно при использовании для вывода графики TBitmap нельзя полностью избавиться от мигания. Есть способы сделать его менее заметным, но оно всё равно будет бросаться в глаза.
Для создания анимации/движения без миганий надо использовать DirectX или OpenGL, в любом виде (напрямую, или через наборы компонентов). |
#3
|
|||
|
|||
![]() Пример пожалуйста: нарисованный на компонентах с DirectX или OpenGL??
|
#4
|
|||
|
|||
![]() http://www.delphisources.ru/pages/fa...hix_part8.html
Игра написссаная на DelphiX. Не мерцает для работы надо скачивать соответствующие компопоненты... ![]() И вобще надо лазить в FAQ там это и многое полезное написнно! ![]() Я ни в чем никогда не уверен... И в этом тоже... ![]() |
#5
|
||||
|
||||
![]() Кстати говоря DelphiX очень прост в изучении. Если нужно вот парочка статей - самый минимум (установка компонента, загрузка и вывод спрайтов). Очень толково и понятно. Там же его (компонент) можно скачать.
Ну и попробуйте при создании формы написать Form1.DoubleBuffered:=true. или если все происходит на панели напишите вместо Form1 - panel1. Это позволит уменьшить маргание, точнее его можно сказать даже не будет, но будет немного анимация дергаться. Вобщем попробуйте и поглядите. |