PDA

View Full Version : سوال: تغییر زبان محیط برنامه در حین اجرا



alamate_aoal
دوشنبه 20 تیر 1390, 03:37 صبح
سلام
چطور میتونم در زمان اجرا , زبان برنامه را تغییر دهم(کاربر با استفاده از منوها این کار را بکنه).
تو سورس زیر که در انتهای این پست ضمیمه شده چه تغییراتی باید داد.

ممنون

حامد مصافی
دوشنبه 20 تیر 1390, 11:01 صبح
سورس شما رو ندیدم، اما مراحل کلی کار رو برای شما و سایر دوستانی که ممکنه این مشکل رو داشته باشند توضیح میدم.
فرض می‌کنیم نام پروژه شما foo است و قصد داریم پروژه را در دو زبان فارسی و انگلیسی ارائه کنید

در تمام پروژه رشته‌هایی را که باید امکان ترجمه داشته باشند را با تابع tr فراخوانی کنید

در فایل pro تغییرات زیر را اعمال کنید

TRANSLATIONS = foo_en.ts foo_fa.ts

دستور زیر را در دایراکتوری حاوی فایل pro صادر کنید

lupdate -verbose foo.proفایل های ts ایجاد شده را با lingust باز کنید و قسمت‌های دلخواه را ترجمه کنید.

حال در برنامه برای تغییر زبان کد زیر را بنویسید


QTranslator translator;
translator.load("foo_fa");
qApp.installTranslator(&translator);

alamate_aoal
سه شنبه 21 تیر 1390, 03:08 صبح
با تشکر از پاسختون; مواردی را که شما ذکر نمودید در سورس اعمال کرده بودم اما با این وجود زبان برنامه تغییر نکرد.
اگر برایتان مقدور است به سورس نگاهی بیاندازید ( سورس خیلی کوتاه و مختصر است) تا شاید سورس کارگشای دوستانی که مشکلی مشابه مشکل من دارند باشد.

alirezabe
جمعه 07 مرداد 1390, 18:14 عصر
سلام

من هم همین مشکل را دارم در ضمن در ویژوال که فایل .pro نداریم

kitten
یک شنبه 09 مرداد 1390, 10:00 صبح
سلام یه بار من هم این مشکل را داشتم تا انجایی که پرسیدم نمی شه زبان را در حین اجرا عوض کرداگه کسی راهی بلده بگه

حامد مصافی
یک شنبه 09 مرداد 1390, 14:38 عصر
با توجه به اینکه دیدم اکثرا این مشکل رو دارین این مثال ساده رو براتون نوشتم
توجه: فایل‌های qm باید در مسیر فعال برنامه باشند