Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сообщение "Please enter an integer between...", а нпдо чтобы по-русски писал 
:(
    Опции темы
ILAgent
Дата 1.3.2006, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 1.3.2006

Репутация: нет
Всего: нет



Ситуация такая.
Вот кинул я на диалог Edit control, связал с ним переменную типа инт с заданным диапазоном значений (от -100 до 100). Когда при работе приложения я ввожу туда значение, не являющееся целым числом из заданного диапазона, и нажимаю кнопку, вызывающую UpdateData(), выводится соответствующее сообщение. Но по-английски. А надо - по-русски.
Что посоветуете ?
PM MAIL   Вверх
DeadSoul
Дата 1.3.2006, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1217
Регистрация: 25.9.2005
Где: Москва

Репутация: 2
Всего: 11



Язык в ресурсах диалога менял?


--------------------
 Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". 

Бьем спамеров их же оружием. Пусть весь спам сыпется им
[email protected] 
PM   Вверх
takedo
Дата 2.3.2006, 07:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 501
Регистрация: 1.6.2005

Репутация: нет
Всего: 3



по началу все хотят использовать DDX, но потом все потихоньку от него отказываются, поэтому делай проверки ручками и сам. smile


--------------------
я не гольфист - я хоккеист
PM MAIL   Вверх
Dreamer_0x01
Дата 2.3.2006, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Я кстати тоже от этого отказался...


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
Earnest
Дата 2.3.2006, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Русифицировать сообщения MFC можно: их слишком много, чтобы все ручками переделывать.

Я знаю 2 способа:
1й способ - только русско-язычное приложение:
В каталоге MFC\include есть папки с локализациями l.fra, l.esp и т.д. Туда нужно поместить аналогичную папку l.rus (содержимое перевести ручками- там не много).
Затем, в редакторе ресурсов открываешь Resourse Includes, находишь строчку
#include "afxres.rc" // Standard components
и заменяешь на
#include "l.rus\afxres.rc" // Standard components
Естественно, язык ресурсов, как уже было сказано, ставишь русским.

2й способ: годится для двуязычного интерфейса
Где-нибудь в InitInstance пишешь примерно такой код:

Код

    // заменить локальную DLL с MFC-ресурсами
    AFX_MODULE_STATE* pState = AfxGetModuleState();

    // если язык русский загрузим локализованную версию MFC ресурсов
    if (m_nLanguage==LANG_RUSSIAN) {
        if (pState->m_appLangDLL==NULL) {
            // загружаем локальную DLL из нашего каталога
            pState->m_appLangDLL = LoadLibrary ("Mfc42loc.dll");
        }
    }
    else {
        if (m_nLanguage==LANG_ENGLISH) {
            if (pState->m_appLangDLL) {
                // будем брать ресурсы прямо из mfc42.DLL
                FreeLibrary (pState->m_appLangDLL);
                pState->m_appLangDLL=NULL;
            }
        }
    }

Вместо Mfc42loc.dll нужно написать имя локализованной библиотеки своей версии. Вот где ее взять - извини, не помню. Вроде бы в system32 должны лежать локализованные версии mfc-ресурсов.


--------------------
...
PM   Вверх
CaptainFlint
Дата 2.3.2006, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Искатель сокровищ
**


Профиль
Группа: Участник
Сообщений: 393
Регистрация: 26.2.2003
Где: Москва

Репутация: 7
Всего: 23



Цитата(Earnest @ 2.3.2006, 14:53 Найти цитируемый пост)
Вроде бы в system32 должны лежать локализованные версии mfc-ресурсов.

Русской среди них нету. Если, конечно, уже не устанавливали. smile А взять её, русскую (равно как и переведённые файлы для папок l.rus) можно тута:
http://flint-inc.ru/Programs/Rus/vc60rus_1.5.rar (38 Кб)
(скромно умолчу, что это мой сайт smile )

PS: Это, естественно, для VC++ 6. Для более новых версий тоже есть пакетики, лежат там же.

Это сообщение отредактировал(а) CaptainFlint - 2.3.2006, 15:04


--------------------
Почему же, ё-моё, ты нигде не пишешь "ё"?
--------------------
Для тех, кто не знает: CaptainFlint - это бывший Константин. ;) 
PM MAIL WWW ICQ   Вверх
Earnest
Дата 2.3.2006, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



CaptainFlint,
А ты где брал? Я точно не у тебя с сайта качала. smile
Где их берут-то - не напомнишь?



--------------------
...
PM   Вверх
ILAgent
Дата 2.3.2006, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 1.3.2006

Репутация: нет
Всего: нет



CaptainFlint, спасибо за русификатор, помог. И всё же я, наверное, откажусь от DDX, как советует takedo.
Ещё раз всем спасибо !
PM MAIL   Вверх
CaptainFlint
Дата 2.3.2006, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Искатель сокровищ
**


Профиль
Группа: Участник
Сообщений: 393
Регистрация: 26.2.2003
Где: Москва

Репутация: 7
Всего: 23



Earnest
Давным-давно, когда деревья были зелёными, когда MS только мечтала о мировом господстве в мире программирования, а Visual C++ 6.0 была ультра-современной средой, нашёлся один добрый человек, который создал такой пакетик для этой среды. Время шло, в пакетике обнаруживались разные ляпы, ошибки, да и просто непереведённые куски. Некто CaptainFlint (тогда ещё и не помышлявший называть себя таким ником) пытался по глупости своей связаться с автором сего проекта, дабы указать на несообразности и нижайше попросить обновления. Но все его усилия пропали даром: официального сайта не нашлось, а по E-mail'у то ли никто не отвечал, то ли сам адрес оказался несуществующим. Вздохнул тогда тяжко CaptainFlint, и решил: была не была, попробую-ка я сам исправить ошибки найденные. И исправил он ошибки найденные, и выложил обновлённый пакетик, заявив самонадеянно, что, раз такая ситуация, то отныне он будет этот пакет поддерживать и обновлять...
Вот и весь сказ. smile


--------------------
Почему же, ё-моё, ты нигде не пишешь "ё"?
--------------------
Для тех, кто не знает: CaptainFlint - это бывший Константин. ;) 
PM MAIL WWW ICQ   Вверх
Earnest
Дата 4.3.2006, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Понятно, теперь будем брать русификацию у тебя
Да здравствуют пираты! (в смысле, капитан Флинт)
smile smile smile


--------------------
...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0499 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.