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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.12.2007, 13:26   #1
russkiy
Пользователь
 
Регистрация: 29.08.2007
Сообщений: 12
По умолчанию тормоза Tmemo

Странная ситуация
Есть:

Дельфи 2007+обычная компонента Tmemo- никаких обработок!

Как только в нее вбиваешь больше 200-300 символов и появляется скроллинг начинаются страшенные тормоза загрузка процессора 100%

с TrichEdit тоже самое.

Извечный русский вопрос: Кто виноват и что делать?
russkiy вне форума Ответить с цитированием
Старый 28.12.2007, 13:55   #2
Domovoy
Форумчанин
 
Регистрация: 24.10.2007
Сообщений: 254
По умолчанию

Это бред какойто!!! Я в memo заливал в десятки раз больше инфы и всё нормально работало. Ты уверен что именно твоя прога сжирает все ресурсы ПК?
Domovoy вне форума Ответить с цитированием
Старый 28.12.2007, 13:59   #3
russkiy
Пользователь
 
Регистрация: 29.08.2007
Сообщений: 12
По умолчанию

сам в шоке!
именно она - 100%
причем ну ничего такого нет!
просто не знаю что делать
russkiy вне форума Ответить с цитированием
Старый 28.12.2007, 14:07   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Попробуйте новый, пустой проект. Киньте туда только Мемо и кнопку, и по кнопке загрузите в Мемо какой-нибудь текстовый файл.
Посмотрите, будут ли "тормоза"...
mihali4 вне форума Ответить с цитированием
Старый 28.12.2007, 14:10   #5
russkiy
Пользователь
 
Регистрация: 29.08.2007
Сообщений: 12
По умолчанию

сам так подумал - попробовал - действительно не тормозит.

теперь никак не могу понять в чем причина-то?

обработок нет никаких

вот что интересно
тормозит только в этой форме - в любом месте и с любым именем

нашел причину!

итак создаем форму,
в ней обычный Тмемо
object Form1: TForm1
Left = 0
Top = 0
AlphaBlend = True
Caption = 'Form1'
ClientHeight = 301
ClientWidth = 562
Color = clOlive
TransparentColor = True
TransparentColorValue = clOlive
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object Memo1: TMemo
Left = 112
Top = 24
Width = 353
Height = 57
Lines.Strings = (
'Memo1')
TabOrder = 0
end
end

вуаля!! тмемо тормозит!

это связано с прозрачностью как-то!

что делать? прозрачность фона нужна!

Последний раз редактировалось Alex21; 28.12.2007 в 15:47.
russkiy вне форума Ответить с цитированием
Старый 28.12.2007, 14:36   #6
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Сообщение от russkiy Посмотреть сообщение
вот что интересно
тормозит только в этой форме - в любом месте и с любым именем
Встречался с таким эффектом.
Дольше получится экспериментировать с поиском причины неадекватного поведения программы. Поэтому радикальный способ - создать новый проект и все наработки (обработчики) по очереди скопировать туда. Единственный способ, который мне помогал.
В какой-то из тем поднимался близкий по духу вопрос и совершенно справедливо было замечено о полезности сохранения копии проекта перед внесением изменений.
Ибо, когда он близок к завершению и имеет приличный объем, такая ситуация может здорово подпортить нервы...
Цитата:
прозрачность фона нужна
Избегаю использовать AlphaBlend. Гораздо более гибкая система - через создание нужных регионов.

Последний раз редактировалось mihali4; 28.12.2007 в 14:41.
mihali4 вне форума Ответить с цитированием
Старый 28.12.2007, 14:39   #7
russkiy
Пользователь
 
Регистрация: 29.08.2007
Сообщений: 12
По умолчанию

прочтите мой последний пост - я нашел причину.
причина в прозрачности фона. Причем без всяких вообще обработок!

но как это лечить?

Вы сами легко получите тот-же эффект.
russkiy вне форума Ответить с цитированием
Старый 28.12.2007, 14:40   #8
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Тоже попадался такой глюк с прозрачной формой, TRichEdit, всё идёт нормально если отключена полоса прокрутки или до тех пор, пока она не появится. Так и не понял откуда тормоза, пришлось вместо transparent=true делать через SetWindowRgn
пыщь
JTG вне форума Ответить с цитированием
Старый 28.12.2007, 14:42   #9
russkiy
Пользователь
 
Регистрация: 29.08.2007
Сообщений: 12
По умолчанию

дальше - больше.

тормоза начинатся как только включается
TransparentColor = True

очевидно пытается найти этот колор в тексте, собака!

Цитата:
Сообщение от JTG Посмотреть сообщение
делать через SetWindowRgn

как? подскажите плиз..

у меня есть специфика - окно как бы "всплывает" проявляясь, боюсь такое только через альфу сделать можно

//Есть кнопка "править" Подряд сообщения не постить!

Последний раз редактировалось Alex21; 28.12.2007 в 15:48.
russkiy вне форума Ответить с цитированием
Старый 28.12.2007, 14:47   #10
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
как? подскажите плиз
Открываем хэлп на "CreateRegion".
Там есть примеры.
И я давал исходник с широким использованием регионов для создания нестандартных форм. Поищите на форуме.
А от "всплывания", боюсь, придется отказаться.
Да и вообще, поменьше дешевых эффектов...
Полезность программы не этим измеряется.
mihali4 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
help! тормоза с DataTable?! billidean Общие вопросы .NET 2 24.08.2008 13:16
TMemo Valera Помощь студентам 14 04.08.2008 10:56
Тормоза винды Altera Операционные системы общие вопросы 4 08.07.2008 18:23
Откуда тормоза (.Find(What:=MyInput, LookIn:=xlValues, LookAt:=xlWhole)) skif93 Microsoft Office Excel 9 24.05.2008 04:00
19 форм = сильные тормоза XPAiN Общие вопросы Delphi 21 29.12.2007 10:47