Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
23 / 23 / 30
Регистрация: 23.10.2012
Сообщений: 344
1

Форма с 2 языками

22.12.2012, 12:49. Показов 929. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Моя программа на 2 языках. Я сделал для каждого языка отдельные формы, но все они одинаковые по функциям. Сейчас я хочу вместо 2 форм с разными языками сделать 1.
С изображениями проблем нет. Просто создать ресурс файл.
С переключением языков тоже все без проблем. Есть 2 кнопки, которые переключают это дело.
Но как редактировать showmessage, чтобы при переключении на русский язык текст был на русском, а при переключении на английском был английским??
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.12.2012, 12:49
Ответы с готовыми решениями:

Программа с 2 языками ru и eng
Здравствуйте. Делаю программа которая будет иметь интерфейс rus и eng. Собственно использую...

Устраняем баги с средами и языками программирования
Если вы обожаете писать на Delphy и Builder 6 то мой вам совет а) если не устанавливается язык: ...

Сделать, чтобы при нажатии на форме 2 на кнопку, форма 2 закрывалась, а форма 1 открывалась
Здравствуйте подскажите как обнулить форму. Вобщем у меня форма form1 как бы с тестом там есть...

Проблемы с языками
У меня такая проблем почти все руские буквы показывают как знак вопрос как можна это изменить? ...

11
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
22.12.2012, 13:14 2
Как вариант, можно текст сообщений иметь в переменной(ых) и загружать из файла на требуемом языке при переключении.
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32849 / 21184 / 8150
Регистрация: 22.10.2011
Сообщений: 36,437
Записей в блоге: 8
22.12.2012, 13:23 3
А у тебя что, все строковые константы "зашиты" в код? Напрасно, во-первых, в Дельфи есть resourcestring для строк.

И во-вторых, даже без него, строки тоже можно затолкать в ресурсы, ага...
0
23 / 23 / 30
Регистрация: 23.10.2012
Сообщений: 344
22.12.2012, 13:24  [ТС] 4
А как вы считаете так лучше если язык можно переключать кнопкой? или с отдельными формами лучше? Может есть другой способ решения, если есть, то буду рад выслушать
0
Заблокирован
22.12.2012, 14:31 5
Вообще это уже давно всё решено. Все многоязыковые приложения имеют внешние файлы. В них тем или способом задаётся индексация интерфейсных элементов и сам текст. Единственное затруднение при этом... Нужно предусмотреть, чтобы эти самые элементы или автоматическии меняли размеры или были уже созданы под максимально возможный размер текста. Многие используют картинки, а пояснения к ним выводятся через хинты.
Но можете ознакомится с библиотекой KOL. Вещь приотличнейшая. Она работает с любыми версиями делфи и так же с FreePascal. В ней есть компонент для создания многоязыковых приложений. Правда придётся привыкнуть к этой библиотеке. Но она стоит того.
А то что предлагали прятать в ресурсные файлы - ну это если не нужна или нежелательна возможность редактирования или дополнения другими языками.
0
23 / 23 / 30
Регистрация: 23.10.2012
Сообщений: 344
22.12.2012, 15:25  [ТС] 6
У меня такой вопрос: Если при нажатии на кнопку у меня должны загрузится изображения и текст в ~ 17 форм для нужного языка и размер все этого ~40 мб то как долго это будет длится???
0
4165 / 1817 / 216
Регистрация: 06.10.2010
Сообщений: 4,074
22.12.2012, 15:43 7
В битмапах нужно хранить только фон кнопки, а текст выводить поверх через TextOut. Если требуется особый шрифт - его можно таскать в ресурсах.
0
23 / 23 / 30
Регистрация: 23.10.2012
Сообщений: 344
22.12.2012, 15:47  [ТС] 8
Эт я знаю я говорю 40 метров не много ли?
0
-4 / 0 / 1
Регистрация: 22.12.2011
Сообщений: 215
22.12.2012, 15:54 9
begin
// Показ собственного сообщения
ShowMessage('Hello World');

// Показ пустого сообщения
ShowMessage('');

// Разделение их на две строки
ShowMessage('Hello '+#13#10+'World');
end;

Добавлено через 2 минуты
примечание ShowMessage выводит простое диалоговое окно на экране с кнопкой ОК, содержащее строку Text.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32849 / 21184 / 8150
Регистрация: 22.10.2011
Сообщений: 36,437
Записей в блоге: 8
22.12.2012, 16:13 10
nasorog, и чего? К чему это всё было написано? Вопрос читать не пробовал?
Цитата Сообщение от XaKO Посмотреть сообщение
как редактировать showmessage, чтобы при переключении на русский язык текст был на русском, а при переключении на английском был английским
0
-4 / 0 / 1
Регистрация: 22.12.2011
Сообщений: 215
22.12.2012, 16:49 11
http://www.rtfm.4hack.com/book... 2=5&id3=11 вот здесь есть ответ:

Добавлено через 4 минуты
вот ещё одна ссылка котрая может помочь http://delphi-prg.ru/prostye-d... sagedlgpos
0
1085 / 571 / 79
Регистрация: 07.04.2011
Сообщений: 971
Записей в блоге: 2
23.12.2012, 02:36 12
Цитата Сообщение от XaKO Посмотреть сообщение
Может есть другой способ решения, если есть, то буду рад выслушать
Цитата Сообщение от XaKO Посмотреть сообщение
Но как редактировать showmessage, чтобы при переключении на русский язык текст был на русском, а при переключении на английском был английским??
Есть такой вариант
0
23.12.2012, 02:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.12.2012, 02:36
Помогаю со студенческими работами здесь

Глюк с языками
Уважаемые соконфетяне, подскажите, как решить сей трабл. Случайно при установке Win была выбрана...

Помогите с языками
Всем привет! Хочу научиться програмировать, но не для Интернета и не на Basic'e... Ну что бы в...

Работа с другими языками
Можно импортировать (совместно писать програму) на C# и Java??Если можно то где найти литературу...

Заполнение базы с 2 языками
Сейчас делаю нормальный вид ссылки. Но встретил проблему, не могу понять как правильно сделать. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru