|
|
|
Много от Вас сигурно са се чудили как се прави софтуер на няколко езика и аз преди време се чудих и мислех че е трудно, а се оказа толкова лесно като детска игра: Ще направя приложение, което е на 3 езика Английски, Български и Френски като ще променям текста в заглавната лента на прозореца, ще се сменя един Label и във формата с името на езика и когато се опитате да изключите приложението ще ви извежда въпрос. 1. Влезте във Visual Studio и създайте нов проект "Windows Form Application" с име "Multilanguage": 2. Променете текста в заглавната лента. Напишете "Multilanguage application".Добавете и един Label във формата(тук ще сложим името на езика) напишете в него "English" Сега да направим прозореца на Български и Френски за целта маркирайте цялата форма (щракнете на заглавната лента на прозореца един път), от Properties отидете на Language и изберете "Bulgarian (Bulgaria)", след това сменете текста в заглавната лента с "Многоезиково приложение", и сменете текста в Label с "Български" , повторете тези стъпки и за Френския език като от Language този път изберете "French (France)", а за текст на Label напишете "Francais", а за текст в заглавната форма напищете "Interface multilingue" Ето как изглеждат формите на различни езици: 1. Английски: 2. Български: 3. Френски: Сега вече идва въпроса как да подкарате програмата на различните езици? Има няколко начина да направите това: 1. Да подавате като аргумент на програмата езика на който да се стартира (това което ние ще направим тук) 2. Да четете информация за езика от конфигурационен файл (което е по-правилно като действие) този файл можете да записвате от програмата и при следващо стартиране програмата да е вече на друг език: Сега къде трябва да пипнем за да може програмата да тръгне на желан от нас език? Всяка програма писана на C# има един файл Program.cs която отговаря за стартирането на приложението, тъкмо там ще променяме. Ето как изглежда кода преди нашата намеса: using System; А ето как изглежда и променения от мен код: using System; За да тръгне приложението трябва да му подадете като аргумент "BG-bg", за Френски "FR-fr", английския е по подразбиране. Ето как приложението стартирано при мен на трите езика: Но тук излиза един друг въпрос добре ясно как става да направим формата на различни езици, но как да направим съобщенията да излизат на различен език или надписи в самата форма които не са статични а се променят с действието на програмата. От Microsoft са помислили и за това. Ето как става: Добавете към проекта си ресурсен файл 1. Дайте десен бутон върху проекта: 2. Избирате Resources File и преименувате на ResLang.resx натиснете Add: Попълнете по този начин: Направете още два ресурсни файла: 1.ResLang.bg.resx - за български 2.ResLang.fr.resx - за френски Много е важно колоната Name във трите файла да е една и съща!!! Сега малко настрани от урока ще прихвана изключването на програмата за да мога да изведа съобщението дали да се изключи приложението: /// <summary> Ето как изглежда програмата на различни езици със съобщенията за изключване: Моля не копирайте този урок другаде без моето изрично съгласие! Браво , добра работа. много подробно брави ![]() |
|
|
