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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.02.2011, 22:40   #1
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию Подмена ресурсных строк в run-time

Вобщем в чем вопрос...В коде есть такие ресурсные строки, например:
Код:
resourcestring
  Str_string_1 = 'Строка 1';
  Str_string_2 = 'Строка 2';
  Str_string_3 = 'Строка 3';
Что нужно - хотелось бы иметь файл (либо обычный txt, либо rc), в котором бы были те же самые строки, только с другим содержанием, например:
Код:
  Str_string_1 = 'String 1';
  Str_string_2 = 'String 2';
  Str_string_3 = 'String 3';
И потом просто уже в run-time заменять соответственные ресурсные строки из файла. Вообще возможно ли такое реализовать? Посоветуйте, что можете.
з.ы. в дальнейшем это должно использоваться для локализации...
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 20.02.2011, 23:58   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

вобще ITE ещё в Дельфи 5 появилась. но она не сильно удобная, проще взять один из тысячи комнонент для локализации или руками рапихать ресурсы по разным длл.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 21.02.2011, 00:48   #3
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

ITE да, действительно не удобная. А вот с чужими компонентами разбираться нету времени.
И вот теперь думаю, неужели нельзя никак подменить ресурсы в рантайме...

Цитата:
или руками рапихать ресурсы по разным длл
А что вы имели ввиду под этим? Можно конкретнее.
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 21.02.2011, 00:54   #4
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

никогда даже не пробывал, такои вариант как TiniFile(sender)
возможен, если да, или можно зделать анологично, то деиствия Write Read
с одинаковои структурои можно использовать в завесимости от языка

ЗЫ. знаю что выразился коряво, но суть думаю ясна
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 21.02.2011, 01:02   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию

Погуглите balmsoft Polyglot. Там всего-то компонент-кидательством занятся и запустить эксперт.

Дальше эксперт сам создаст файл и по вашему желанию засунет в него все локализуемые строки, и строковые ресурсы или по отдельности(или строки или строковые ресурсы(resurcestring)).

Сам пользуюсь, до этого искал компонент локализации. В итоге остановился на этом(Жаль их проект здох =().

Хорошая справка и довольно понятный демо-пример.
Человек_Борща вне форума Ответить с цитированием
Старый 21.02.2011, 01:04   #6
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

Цитата:
[English]
Str_string_1 = 'Строка 1';
Str_string_2 = 'Строка 2';
Str_string_3 = 'Строка 3';

[Russian]
Str_string_1 = 'String 1';
Str_string_2 = 'String 2';
Str_string_3 = 'String 3';
в ини ведь в одном фаиле все можно разделить, чет я с сендером погорячился
---------------------------------------------------------------------------------------
добавление нового типа фаила можно зделать дописание старого, в сама прога считывает зарание сохраненыи коифициент количества таких параметров ...
VirusN13

Последний раз редактировалось ArtGrek; 21.02.2011 в 01:06.
ArtGrek вне форума Ответить с цитированием
Старый 21.02.2011, 01:17   #7
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Лучше сделать отдельные ини-файлы, поскольку там будет не 3 строки, а все капшены и текстовки компонентов формы.
Почему отдельные ?
Чтобы любой китаец (а китайского вы ведь не знаете ?) мог сам создать себе файл CHINA.LNG, скопировав его из ENGLISH.LNG и переведя в нем все параметры с английского на китайский.
А программа должна делать единственное - при запуске искать все файлы *.LNG и заполнять их названиями комбобокс выбора языка.
И при выборе друго языка менять все капшены и текстовки из соответствующего LNG (INI) файла.
asmodey1 вне форума Ответить с цитированием
Старый 21.02.2011, 01:23   #8
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

Человек_Борща, если можете - выложите этот компонент, ибо все ссылки ведут на офф сайт, а там его уже нету...
Насчет ини-файлов - оно то конечно не плохо, но неизвестно как будет по скорости работать, если много контролов надо перевести...
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 21.02.2011, 01:28   #9
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

Код:
но неизвестно как будет по скорости работать, если много контролов надо перевести...
алгоритм работы с другими фаилов будет быстрее? или тот же компонент, он разве не теже процедуры поиска будет выполнять?

мне просто самому интересно
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 21.02.2011, 01:30   #10
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Цитата:
Сообщение от spamer Посмотреть сообщение
Насчет ини-файлов - оно то конечно не плохо, но неизвестно как будет по скорости работать, если много контролов надо перевести...
Со скоростью операции чтения с диска...
З.Ы. Взяли же манеру создавать сами себе трудности, решая элементарные задачи через ж...пу
asmodey1 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание TImage в Run-time mrbadge Помощь студентам 9 03.02.2011 22:48
Run-time error 13 olimpus Microsoft Office Excel 11 25.12.2010 22:49
Создание компонентов Run Time Serebah Общие вопросы Delphi 13 08.12.2010 22:02
Заполнение cxLookupComboBox в run time fake2 БД в Delphi 0 17.05.2010 08:31
ActionManager - работа в run - time chingiz Компоненты Delphi 0 10.10.2009 08:48