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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2009, 02:19   #1
ScreN
Пользователь
 
Аватар для ScreN
 
Регистрация: 27.12.2008
Сообщений: 88
По умолчанию Загрузка цветовой гаммы RichEdit

Здравствуйте.

Проблема вот в чем. Сделал диалог изменения цвета фона в RichEdit..
Когда цвет меняется.. идет сохранение параметров в реестр.. А потом при старте программы.. загрузка из реестра.
Цветовой код в реестр сохраняется нормально.. да и загрузка идет нормальная. Но при следующем запуске программы.. цвет в RichEdit почему то востонавливается прежний. Белый.. По умолчании... А не тот что был выбран и сохранен до этого..

Вот как я делаю.

Выбор цвета из ComboBox
Код:
{Цвет ФОНА}
procedure TConfigForm.sSpeedButton1Click(Sender: TObject);
begin
  if ColorFon.Execute then Begin
  PrewColor.Color:= ColorFon.Color;
  end;
end;
Кнопка применить
Код:
{Кнопка Применить}
procedure TConfigForm.ButtonOkClick(Sender: TObject);
begin
 ConfSaveParam;
 Close;
end;
Сохранение настроек
Код:
ConfSave.WriteInteger('Config','SelColorFonBox', ColorFon.Color); //ColorBox
ConfSave.WriteInteger('Config','ColorFon', PrewColor.Color); // RichEdit
Загрузка настроек
Код:
ColorFon.Color:=ConfLoad.ReadInteger('Config','SelColorFonBox', 0); //ColorBox
PrewColor.Color:=ConfLoad.ReadInteger('Config','ColorFon', 0); //RichEdit
Далее... Загрузка при старте

Код:
{Показ главной формы}
procedure TForm1.FormShow(Sender: TObject);
begin
  ConfigForm.ConfLoadParam; {Загрузка параметров программы}
.....


Когда я меняю цвет.. Он меняется в RichEdit и сохраняется цветовой код самого ColorBox и RichEdit в реестр...

А потом я пытаюсь при старте программы.. загрузить его... Но цвет почему то становится по умолчанию белым...
А вот еще момент...
Если зайти в форму с настройками и потом выйти и опять зайти... Тогда цвет в RichEdit меняется на тот который выбрал.. А если 1 раз зайти в форму с настройками.. то цвет стоит по умолчанию...

Помогите..
Заранее спасибо!
ScreN вне форума Ответить с цитированием
Старый 14.02.2009, 02:37   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А вы ему Repaint делать не пробовали? После установки считанного из реестра цвета. Компонент-то капризный...
mihali4 вне форума Ответить с цитированием
Старый 14.02.2009, 03:03   #3
ScreN
Пользователь
 
Аватар для ScreN
 
Регистрация: 27.12.2008
Сообщений: 88
По умолчанию

пробывал я ему Repaint делать... Не помогает
ScreN вне форума Ответить с цитированием
Старый 14.02.2009, 03:04   #4
ScreN
Пользователь
 
Аватар для ScreN
 
Регистрация: 27.12.2008
Сообщений: 88
По умолчанию

У меня выбор параметров идет через ListBox... я уже думаю может в нем что..
ScreN вне форума Ответить с цитированием
Старый 14.02.2009, 03:05   #5
ScreN
Пользователь
 
Аватар для ScreN
 
Регистрация: 27.12.2008
Сообщений: 88
По умолчанию

Дело в том что когда я выбираю цвет.. то он сразу меняется.. А вот при запуске программы.. пока форму с настройками 2 раза не откроешь.. он не загрузится из реестра...
ScreN вне форума Ответить с цитированием
Старый 14.02.2009, 08:38   #6
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Цитата:
Сообщение от ScreN Посмотреть сообщение
пробывал я ему Repaint делать... Не помогает
Для перерисовки RichEdit вообще-то Format применяется. А перед выводом на него чего угодно нужно Clear применять...
Код:
RichEdit1.Clear;
......
...... Что-то выводим
......
RichEdit1.Format;
Прошу прощения , наверное не выспался я сегодня .... RichEdit с RichView перепутал.... Спешка. Уважаемые модераторы, если можно удалите пост.
"Заряженному танку в дуло не смотрят" @Dekmer in WoT

Последний раз редактировалось Kotofff; 14.02.2009 в 09:46. Причина: Ошибся в спешке !!!
Kotofff вне форума Ответить с цитированием
Старый 14.02.2009, 09:37   #7
ScreN
Пользователь
 
Аватар для ScreN
 
Регистрация: 27.12.2008
Сообщений: 88
По умолчанию

Ты где такой параметр "FORMAT" нарыл? У мну лично такого не присутствует!
А вот Repaint не помогает... Rich не перерисовывается .. и форма тоже..!
ScreN вне форума Ответить с цитированием
Старый 14.02.2009, 11:20   #8
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Ну, вот вы сделали:
Цитата:
Загрузка настроек
ColorFon.Color:=ConfLoad.ReadIntege r('Config','SelColorFonBox', 0); //ColorBox
PrewColor.Color:=ConfLoad.ReadInteg er('Config','ColorFon', 0); //RichEdit
Приведите строку, где вы присваиваете RichEdit-у фоновый цвет.
Может, вы там что-то намудрили?
Я моделировал ситуацию - никакого репэйнта даже не понадобилось...
Присвоение нового цвета делал даже в онкриэйте формы...
mihali4 вне форума Ответить с цитированием
Старый 14.02.2009, 11:47   #9
ScreN
Пользователь
 
Аватар для ScreN
 
Регистрация: 27.12.2008
Сообщений: 88
По умолчанию

Код:
procedure TConfigForm.sSpeedButton1Click(Sender: TObject);
begin
  If ColorFon.Execute Then
  PrewColor.Color:= ColorFon.Color;
end;
PrewColor - это у меня так называется RichEdit.. так как это всего лишь предпросмотр...

Можите уже закрывать топик... Так уж вышло что оно само взяло и заработало... Вот уж не знаю как..
Вроде ничего в коде не трогал...

Я тоже когда у меня не получалось.. Стал моделировать ситуацию... Там все у меня работало..

А щас и здесь все каким та образом заработало...
Всем спасибо!

Блин.. Ну вот.. Удалил данные из реестра.. И теперь опять не работает ппц

Пользуйтесь кнопкой "Правка"

Последний раз редактировалось mihali4; 14.02.2009 в 12:19. Причина: Слияние постов
ScreN вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
richedit Arkuz Общие вопросы Delphi 3 24.09.2008 22:38
RichEdit Valera Помощь студентам 12 04.08.2008 18:38
RichEdit StartMis Общие вопросы Delphi 20 24.04.2008 15:40
RichEdit nimf Общие вопросы Delphi 8 23.04.2008 07:55