Показать сообщение отдельно
  #17  
Старый 14.12.2010, 08:22
Аватар для dr. F.I.N.
dr. F.I.N. dr. F.I.N. вне форума
I Like it!
 
Регистрация: 12.12.2009
Адрес: Россия, г. Новосибирск
Сообщения: 660
Версия Delphi: D6/D7
Репутация: 26643
По умолчанию

Вот. Пример написан за пол часа (D6).
Суть:
1. В Юните2 есть две процедуры. Суть одна и таже, только в одну передаем путь до фала, во вторую инициализированный TINIFile. Ну и родительский контрол.
Код:
procedure SetProperties(aParent: TComponent; LangFile: String); overload;
procedure SetProperties(aParent: TComponent; LangINI: TINIFile); overload;
2. Процедура пробегает по всем вложенным компонентам и т.д. включая родительский контрол.
3. По имени контрола ищет в инишке секцию. Запрашивает все свойства компонента, перебирает все свойства и проверяет наличие такого ключа в данной секции. Если есть, то этому свойству устанавливает соответствующее значени.

Разобрался и написал с нуля. Сложного ничего нет. Лови пример - делай под себя.

Надо жамкнуть кнопку "Test".

Пример ИНИ
Код:
[BitBtn1]
Left = 20
Top = 20
Caption = Русский капшн

[Label1]
Left = 200
Top = 20
Caption = И тут тоже

[Edit1]
Left = 20
Top = 50
Text = а тут текст

[Form1]
Caption = Капшн из инишки!

Тут показано не как "работать" с языками, а как вообще можно в ини хранить все настройки, незаморачиваясь на свойства компонента. Просто писать как есть
__________________
Грамотно поставленный вопрос содержит не менее 50% ответа.
Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть.
Ответить с цитированием