ورود

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : جادوگر چند زبانه



mokaram
2014/12/04, 10:01
با سلام

خیلی از ماها موقع نصب نرم افزار رو سیستممون بارها مشاهده کردیم که برای اینکار یه فرمی برامون باز میشه و مرحله به مرحله با زدن دکمه Next جلو می ریم و اطلاعات خواسته شده را تکمیل می کنیم تا نصب به اتمام برسه در واقع همه اینکار ها را ما تو یه فرم می بینیم
یه همچین کاری را تو اکسل می تونید از طریق فایل پیوست مشاهده کنید

misammisam
2014/12/04, 22:24
سلام
چطور شد !!!
متوجه نشدم ، چطوری فرم زبانش عوض میشه !!!؟؟؟؟
لطفا یه آموزش بزارید .

mokaram
2014/12/07, 09:10
آقا حقیقتش منم هر چی ور رفتم سوادم به اون حد نرسید که بفههم چی میگه ولی خب گفتیم این فایل را بزاریم تا بقیه که اش چیزی سر در میارن به ما هم بگن

khakzad
2014/12/07, 10:13
سلام خدمت دوستان
ی چیزایی ازش دراوردم :)
البته خیلی کمه و لی کم کم درست میشه

اینکه عوض میشه، بخاطر استفاده از multipage هست.
اگر روی کادر کلیک کنید و طیق شکل عمل کنید می بینید که 4 صفحه موجود هست که تو هرکدوم یک مرحله گنجونده شده


http://exceliran.com/up/up/fd87aed40c706a79c4456fa1778268ec.jpg (http://www.exceliran.com)

Amir Ghasemiyan
2014/12/07, 11:23
سلام
چطور شد !!!
متوجه نشدم ، چطوری فرم زبانش عوض میشه !!!؟؟؟؟
لطفا یه آموزش بزارید .

سلام ميثم جان
اينطوري شد:


Private Sub obEnglish_Click()
UserLanguage = 1
ChangeLanguage
End Sub


با زدن مثلا دكمه انگليسي اين سابروتين انجام ميشه. كه ميبينين به متغير UserLanguage مقدار يك و بعد هم سابروتين زير اجرا ميشه:


Sub ChangeLanguage()
Dim ctl As Control
Dim Cap As String


For Each ctl In Me.Controls
If HasCaption(ctl) Then
Cap = Translate(ctl.Name, UserLanguage)
If Cap <> "" Then ctl.Caption = Cap
End If
Next ctl


' Update the caption
Cap = APPNAME & " - Step " _
& MultiPage1.Value + 1 & " of " _
& MultiPage1.Pages.Count
Me.Caption = Translate(Cap, UserLanguage)
End Sub


تو اين كد هر چي كنترلر هست caption مربوطه تغيير ميكنه. براي تغييرش هم از فانكشن زير استفاده ميشه:


Function Translate(text, language) As String
Dim txt As String
On Error Resume Next
txt = Application.WorksheetFunction.VLookup(text, Sheets("shtLocalization").Range("A1:e32"), language + 1, False)
If Err <> 0 Then Translate = "" Else Translate = txt
End Function


در اين فانكشن هم همونطور كه متوجه شدين ميره از شيت shtLocalization كه شيت مخصوص ترجمه هست اطلاعات رو با vloockup در مياره

اين بود كليتي از كار اين فايل ;)