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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2011, 03:41   #1
pimple2006
Пользователь
 
Регистрация: 29.11.2011
Сообщений: 26
По умолчанию языки и ini файлы

еще раз здравствуйте,сразу примеры и вопросы

всем известный AIMP и его lng файл(ini)

Код:
[FILE]
Icon=0000010001001010000001001800680300001600000028000000100000002000000001001800000000004003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000AF62289C5F47B45C1FBF5B07BC5601BE6A25937B850720CE071FCB7D6C8EB05F29B14A01AE4A06A44B1F8C4F489A4720B97F5399A2CAA092A3CF7D31E67400E58D28B6A19D1749F31648F49D95B1D68330DB6B00C6752F9C8C9F8A94CAA86748C37230D0B494AEBCDEAA9FAED3833AF79520C1AAA01E55FB1D54FCA7A0B7E58A2AD27E35A797A69FAEDFC0AA9CAB5422C6630FE88F29D8B285B3B8D3AB9BA9D09866C7AC9A2257FA2155FBACA1B2CD9768AA949FA2AAD6C6A793D6812EAC4405CF7E2FEE9126FBAD42E7CEADBCC5E6C2BCCACBBEBE275AFC2658FCB3B0CABBB5C4B0BBE1D1C1B7EEA54CDD7F21B76224A48C8DC1A796C8A98ECEBAADBEC4E2B2C5FC9FB5FA2E5FFE2C5CFE90A8F697ADF7AAB7E5C2B2B2B79786AE938E907179133EEB265BF82C62FB3063FC3364FE3465FE3566FE3566FE3363FE2C5DFE2557FE2053FE1A4EFC134AFB0D41F30A1EC81640EB295DF92F64FC3466FD3869FE386AFF396AFF3A69FF3666FE2E5FFE275AFE2154FE1B4EFD144BFB0E43F40921C99D8FA0BAAAAAC3ACA1CCC2C3B9C5EFA9C0FF9DB7FF3A6AFF3567FE8EA9FA8FA9FBA1B2ECB9B1BFAD9798A4949E897488D08438F0992FFFB955E9D7BDBCC8EEC4C1D1D1CAC6386AFC3466FCB9B7CDB9B3C4AAB6E3CEC2BFEEAA58DC8229B9692CCF6E0FF49D33E1BD8FBABFD6B4A4AADAA96CD6BEA23669FA3265FBB8ADB5D59D68AE9699A5ACD2CAAC96E08830B84E04CE8135D8C1A4B3C0DFB4A6AAE19239FFA622D2BBA73469FB3164FCB5ADBCF1952CDE862FAD999D9EAEDAC4AF9FB96224C8905D9AA5C9AC999DDE8C2FF68601F49D2CC8B2A42D60F72B5CF7ADA5BAE29135E87802D47F29A68F908995C8B8794AC07835AE754FC2722ECE7114CE6D0CD08231A692961740E7173CE48F86A6C17738C4630CC06413B4652BA16749AC6029000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFFF00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFFF0000
AUTHOR=Andrey Saitgalin (andrey.saitgalin@gmail.com)
Name=English (EN)
VersionID=3005
Help=AIMP3-en.chm

[CONTEXT]
0=Open with AIMP3
1=Play
2=Add to playlist
3=Add to queue
4=Add to bookmarks
5=Edit tags

[Templates]
%A=%A - Album
%B=%B - Bitrate
%C=%C - Channels
%D=%D - File Path
%E=%E - Extension
%F=%F - File Name
%G=%G - Genre
%H=%H - Sample Rate
%L=%L - Duration
%R=%R - Artist
%S=%S - File Size
%T=%T - Title
%Y=%Y - Date
%M=%M - Rating
%IN=%IN - File Index in playlist
%NL=%NL - New Line (only for TrackList)
%DC=%DC - File creation date
%TC=%TC - File creation time
%DN=%DN - Disk Number
%TN=%TN - Track Number
%IF()=%IF(A, B, C) = C, if "A" is empty
%Up()=%Up(), ALL LETTERS IN UPPER CASE
%Low()=%Low(), all letters in lower case
%Caps()=%Caps(), All Words With Capital Letter
%Char()=%Char(X), Char with code X
%Replace()=%Replace(A, B, C), A - source string, B/C - what to replace/replace with

[Updater]
Caption=Update Checker
L1=Your version:
L2=Latest version:
L3=Manual update checking
L4=New version available: %s
CB1=Don't remind about this version
B1=Check for updates
B2=Download
B3=Close
как грузится у меня в программе

Код:
procedure TForm1.FormCreate(Sender: TObject);
  begin
    Russian:=TIniFile.Create('.\Russian.ini');
    English:=TIniFile.Create('.\English.ini');

.........

      Form1.Label1.Caption:=English.ReadString('Labels','A','');
      Form1.Label2.Caption:=English.ReadString('Labels','B','');
      Form1.Label3.Caption:=English.ReadString('Labels','C','');
      Form1.Label4.Caption:=English.ReadString('Labels','D','');
      Form1.Label5.Caption:=English.ReadString('Labels','E','');
      Form1.Label6.Caption:=English.ReadString('Labels','F','');
      Form1.Label7.Caption:=English.ReadString('Labels','G','');
      Form1.Button1.Caption:=English.ReadString('Labels','H','');
      Form1.Label11.Caption:=English.ReadString('Labels','I','');
      Form1.menu1.Caption:=English.ReadString('Menu','A1','');
      Form1.exit1.Caption:=English.ReadString('Menu','B1','');
      Form1.Language1.Caption:=English.ReadString('Menu','C1','');
      form1.GroupBox1.Caption:=English.ReadString('Menu','D1','');
      form1.About.Caption:=English.ReadString('Menu','E1','');
      form1.Author.Caption:=English.ReadString('Menu','G1','');
      form1.Help.Caption:=English.ReadString('Menu','F1','');
заполнение элементов на форме с помощью components читал,не нравится.
возможно сделать что бы я из ини файла считывал сразу элемент и его значение.?

т.е
ini файл:
[help]
form1.Help.Caption = о программе

а в delphi

readstring('help'......)
pimple2006 вне форума Ответить с цитированием
Старый 11.12.2011, 09:39   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Всё куда проще.
У вас есть контейнер компонент(форма) а у каждого контейнра есть методы чтобы перещитывать обьекты внутри и/или обращаться к обьекту и его свойству.
Вот банально:

Код:
var
 I:INTEGER;
begin
 for i:=0 to Form.ComponentCount -1 do
begin
if (Form.Components[i] is TButton) then
(Form.Components[i] as TButton).Caption:=ini.ReadString('BUTTONS',(Form.Components[i] as TButton).Name+'.Caption','Кнопка 1');
end;
запись точно так же.
Человек_Борща вне форума Ответить с цитированием
Старый 11.12.2011, 11:46   #3
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

F1 не пробовал нажимать?
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 11.12.2011, 12:04   #4
pimple2006
Пользователь
 
Регистрация: 29.11.2011
Сообщений: 26
По умолчанию

Цитата:
Сообщение от GunSmoker Посмотреть сообщение
F1 не пробовал нажимать?
помоему ресурсы в инете и создаются для людей,не знающих F1
pimple2006 вне форума Ответить с цитированием
Старый 11.12.2011, 12:46   #5
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Цитата:
Сообщение от pimple2006 Посмотреть сообщение
помоему ресурсы в инете и создаются для людей,не знающих F1
Сомневаюсь. Вы думаете людям интерестно копипастить информацию из справки в форум?
vovk вне форума Ответить с цитированием
Старый 11.12.2011, 14:04   #6
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Единственная проблема при локализации это строки в resourcestring секции.
Ну альтернатива, это толпа переменных типа String куда считываются такого рода данные.

ТС вроде бы искал способы не читать ini.ReadString в каждый компонент.
Человек_Борща вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ini файлы. Виктория7777 Общие вопросы Delphi 4 15.04.2011 15:27
ini-файлы KORT Общие вопросы C/C++ 1 07.07.2008 15:12
Ini файлы Airou Общие вопросы Delphi 23 07.05.2008 19:50
INI файлы aesoem Общие вопросы Delphi 3 24.12.2007 21:22