![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Добрый день!
Столкнулась с такой проблемой: есть форма1 и форма2. В форме 2 выбираю цвет для формы1. Цвет на форме1 изменяется, но вот при повторном открытии приложения цвет остается не измененным. Может кто-то подскажет как сохранить изменения? или где можно почитать? На форуме ответа не нашла . Заранее спасибо ![]() |
#2
|
||||
|
||||
![]() Так какбе надо сохранять в реестр или ини файл.
TRegIniFile, TIniFile. — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
|||
|
|||
![]() в ini. Есть процедура при закрытии формы
Код:
procedureTForm.FormClose(Sender: TObject; var Action: TCloseAction); var Ini: TIniFile; begin Ini := TIniFile.Create( ChangeFileExt( Application.ExeName, '.INI' ) ); try Ini.WriteInteger('Form', 'Color', TForm1.color) finally Ini.Free; end; end; и процедура procedure TForm1.FormShow(Sender: TObject); var Ini: TIniFile; begin Ini := TIniFile.Create( ChangeFileExt( Application.ExeName, '.INI' ) ); try Color:=Ini.ReadInteger( 'Form', 'Color', clCream); finally Ini.Free; end; end; lmikle: пользуемся тегами!!! Последний раз редактировалось lmikle, 30.07.2011 в 00:42. |
#4
|
||||
|
||||
![]() У меня твой код работает.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#5
|
|||
|
|||
![]() я не знаю в ini файле у меня всегда одно и то-же число. Цвет для формы1 я выбираю в форме2 из диалога процедурой
Код:
procedure TForm4.RadioButton1Click(Sender: TObject); var c:Longint; begin if not ColorDialog1.Execute then exit; C:=ColorToRGB(ColorDialog1.Color); Form1.Color:=c; Repaint; end; Последний раз редактировалось lmikle, 30.07.2011 в 00:43. |
#6
|
||||
|
||||
![]() Используй:
Код:
procedure TForm2.FormShow(Sender: TObject); var Ini : TIniFile; begin Ini := TIniFile.Create( ChangeFileExt( Application.ExeName, '.INI' ) ); try Color := Ini.ReadInteger( 'Form', 'Color', clCream); finally Ini.Free; end; end; procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); var Ini : TIniFile; begin Ini := TIniFile.Create( ChangeFileExt( Application.ExeName, '.INI' ) ); try Ini.WriteInteger('Form', 'Color', Color) finally Ini.Free; end; end; procedure TForm2.Button5Click(Sender: TObject); begin if CD.Execute then begin Form2.Color := ColorToRGB(CD.Color); Repaint; end; end; Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. Последний раз редактировалось angvelem, 30.07.2011 в 00:17. |
#7
|
|||
|
|||
![]() Цвет меняешь только у одной формы, или ещё есть формы, у которых меняешь цвет?
|
#8
|
|||
|
|||
![]() Пока только в одной
|
#9
|
|||
|
|||
![]() Ребята, все равно не получается. Пока приложение открыто цвет тот, который выбрала. Как только закрыла и по новой открываю его цвет остается как до внесения изменений. И переменные вроде все объявила. Уже и не знаю где копать
![]() |
#10
|
||||
|
||||
![]() Нет ничего сложного, на самом деле, тебе дали кучу кода...
Смотри: когда вносишь изменения в цвет формы попутно сохраняй эти параметры в файл или реестр...Потом при открытии (создании, активации см. цикл жизни формы в сети) формы назначай ей параметры из данного файла или реестра... Если есть проблемы с ини файлами или работой с реестром пиши... Или лучше подкинь свой код подправим... В начале был Бит, потом Байт и только потом появилось Слово... |
#11
|
||||
|
||||
![]() Код, который я привёл, почти твой, рабочий на 100%, у меня работает без сбоев.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#12
|
|||
|
|||
![]() Все 3 процедуры, которые я использую, я бросила вначале. Если их надо переписать в другом виде, то сделаю. Пробовала использовать код Angvelem результат тот-же что и раньше - при повторном открытии цвет не тот.
|
#13
|
||||
|
||||
![]() Значит что то путаешь, я говорил уже, код работает 100%.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. Последний раз редактировалось angvelem, 30.07.2011 в 01:24. |
#14
|
|||
|
|||
![]() Да, спасибо, Ваше приложение работает. Из своего приложения убрала все лишнее и приклепляю файл, глаза наверное уже замылились
![]() ![]() ![]() |
#15
|
||||
|
||||
![]() Действительно глаз "замылился". События OnShow и OnClose объявлены, но форме Form2 не присвоены!!!
![]() Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |