Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 26.10.2009, 11:38   #11
Gerzs
Форумчанин
 
Аватар для Gerzs
 
Регистрация: 23.07.2009
Сообщений: 185
По умолчанию

Моё личное мнение о «моргании» графики на форме: при определенный скоростях продвижения графики по форме изображение начинает «моргать», причиной этого вижу только в том, что вывод графики на форму слабо проработан.

Последний раз редактировалось Gerzs; 26.10.2009 в 11:41.
Gerzs вне форума
Старый 27.10.2009, 14:16   #12
Maxs
Заблокирован
 
Регистрация: 06.04.2009
Сообщений: 130
По умолчанию

Можно поподробней? А то с помощью канваса сделал без ограничения символов, но на некоторых компах все-равно моргает. При том есть программа "Бегущая строка" - она на всех компах хорошо работает. Именно её я и пытаюсь повторить. Читал про то что можно избежать мерцания включив PFD_DOUBLEBUFFER, но как это сделать - не нашел.

Последний раз редактировалось Maxs; 27.10.2009 в 15:17.
Maxs вне форума
Старый 28.10.2009, 13:25   #13
Gerzs
Форумчанин
 
Аватар для Gerzs
 
Регистрация: 23.07.2009
Сообщений: 185
По умолчанию

Maxs, я думая этой программе вывод строки сделан не с помощью стандартных графических средств Windows. Насколько мне известно, флаг PFD_DOUBLEBUFFER принадлежит библиотеке OpenGL. Чем преодаливать ограничении вывода более 255 символов легче вывести несколько строк в 255 символов.
Gerzs вне форума
Старый 28.10.2009, 15:16   #14
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

SetPixelFormat и все рядом с ним.
Цитата:
Насколько мне известно, флаг PFD_DOUBLEBUFFER принадлежит библиотеке OpenGL.
нет.
OpenGL сам зависит от этой структуры.
Цитата:
причиной этого вижу только в том, что вывод графики на форму слабо проработан.
если что то используйте чистое АПИ тогда.
а вообще можно самостоятельно буфферизировать...и вообще можно самостоятельно и рисовать(label сам себя рисует...он не оконный)
Цитата:
Чем преодаливать ограничении вывода более 255 символов легче вывести несколько строк в 255 символов.
у стринг нет такого лимита.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 29.10.2009, 10:53   #15
Gerzs
Форумчанин
 
Аватар для Gerzs
 
Регистрация: 23.07.2009
Сообщений: 185
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
у стринг нет такого лимита.
Зато у TextOut есть такой лимит, я его имел ввиду.

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
нет.
OpenGL сам зависит от этой структуры.
Тогда пардон, ошибся.

Последний раз редактировалось Gerzs; 29.10.2009 в 10:59.
Gerzs вне форума
Старый 29.10.2009, 17:22   #16
Maxs
Заблокирован
 
Регистрация: 06.04.2009
Сообщений: 130
По умолчанию

Я сейчас использую TextOut, сделал при создании формы Form1.DoubleBuffer:=True; Теперь стока меньше трясется. Пробовал сделать с помощью GLScene(OpenGL), но там текст можно только английский.
Maxs вне форума
Старый 29.10.2009, 19:30   #17
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Зато у TextOut есть такой лимит, я его имел ввиду.
где лимит?
только что сунул в него динамическую строку(не константу) в 500 символов...
и никаких ошибок.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 29.10.2009, 20:34   #18
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
Пробовал сделать с помощью GLScene(OpenGL)
...в opengl можно воспользоваться:
1) графическим отображением шрифта заданного заранее
2) задать шрифт, пример
Код:
procedure Tpgl.CreateDC;
begin
...
бла-бла-бла
 //шрифт- вариант1
 CreateGLFont;
end;

...
procedure CreateGLFont;
var DC: HDC;
    sz: SIZE;
    old, hf: HFONT;
begin
 DC := wglGetCurrentDC;
 hf := MakeFont(DC, 'arial cyr', 6, true, false, false, false, 0);
 old:= SelectObject(DC, hf);
 wglUseFontBitmaps(DC, 0, 256, GLF_START_LIST);
 SelectObject(DC, old);
 DeleteObject(hf)
end;

procedure tpgl.paintTXT;
begin
 glNewList(TXT, GL_Compile);
  //текст- вариант1
  glColor3f(0.2, 0.2, 0.2);
  texto(0.0, 0.0, 'km ню ню'); // ПРЕКРАСНО ОТОБРАЖАЕТ КИРИЛЛИЦУ и ЛАТИНИЦУ
 glendlist
end;
procedure Tpgl.SetViewText(const Value: Boolean); //текст оси-
begin
 FViewText:= Value;
 if value then glCallList(TXT)
end;
...и кстати... если уж пользуетесь готовыми компонентами GLScene, то там есть такой tBitmapFont1, который как раз и задает граф.отображение фонта
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума
Старый 29.10.2009, 23:00   #19
Maxs
Заблокирован
 
Регистрация: 06.04.2009
Сообщений: 130
По умолчанию

raxp, можешь выложить пример вывода текста? А то я с чистым OpenGL не работал. А в инете либо слишком замудреные примеры, либо не работает...
Maxs вне форума
Старый 30.10.2009, 09:09   #20
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
raxp, можешь выложить пример вывода текста? А то я с чистым OpenGL не работал
держите...
Вложения
Тип файла: zip opengl_txt.zip (3.5 Кб, 61 просмотров)
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменить курсор при перемещении формы Nester Общие вопросы Delphi 11 28.09.2009 18:29
Процедура при перемещении формы Alex Cones Общие вопросы Delphi 7 28.07.2009 09:11
Запоминание координат при перемещении формы Shouldercannon Общие вопросы Delphi 5 21.06.2009 23:11
При расположении Label на компонентах, место под Label, не реагирует на событие onClick. NavigatorNeba Компоненты Delphi 3 15.11.2008 19:56
Почему моргает экран при развороте спрайта V-int Мультимедиа в Delphi 2 03.11.2007 14:47