سلام به همگی
یه همچین چیزی نیاز دارم
البته باید کانورتش کنم به یه زبان دیگه
نمونه ی این کا رو در نرم افزاری ایرانی دیدم ولی در دسترس نیست که عکس بذارم
خاهشا اساتید راهنمایی کنن
ممنون
سلام به همگی
یه همچین چیزی نیاز دارم
البته باید کانورتش کنم به یه زبان دیگه
نمونه ی این کا رو در نرم افزاری ایرانی دیدم ولی در دسترس نیست که عکس بذارم
خاهشا اساتید راهنمایی کنن
ممنون
سلام
تو ویژوال بیسیک برای اوردن به سمت راست منو ها باید خاصیت RightToLeft فرم را برابر با True کنی
ولی برای سمت راست اوردن دکمه ها نمیدونم
راستی عکس بالا آینه شده است مه این که سه تا دکمه سنت راست باشن
باتشکر از شما دوست گرامی
همونطور که گفتم چون باید کانورت کنم به زبان دیگه نیاز به کد دارم
اگه API باشه که دیگه عالیه
فکر کنم برای زبانهای راست به چپ مثل فارسی بهتره این روش پیگیری بشه
یعنی منوها راست چین بشن و دکمه های اصلی چپ چین
و البته نام پنجره هم راست چین بشه
باز هم ممنونم
------------------
خداروشکر مشکل با API حل شد
البته خودم بلد نیستم با سرچ پیداکردم
توابع
SetWindowLong
SetWindowPos
متاسفانه اونقدر vb بلد نیستم که اتونم کد رو کانورت کنم برای vb
اگر تونستم میذارم اینجا
آخرین ویرایش به وسیله PersianGulf : یک شنبه 11 اسفند 1387 در 11:18 صبح
با سلام
در .net 2005 به بالا فرمها همچين خاصيتي دارند ( علاوه بر right to left ) كه دقيقا Layout فرم رو راست به چپ مي كنه من خودم تو يكي دو برنامه ازش استفاده كردم
ولي به اين نتيجه رسيدم كه كار اشتباهي هست براي اينكه كاربر به دكمه هاي سمت راست پنجره عادت داره و عوض كردن جاي اونا كارش رو مشكل تر مي كنه
ولي منو ها خيلي راحت با Right To Left كردن پنجره ميان سمت راست و هيچ مشكلي هم ندارن حتي در VB 6
با سلام
با راست چين كردن منوها مشكلي نيست
ولي چپ چين كردن دكمه هاي پنجره كار كاربر برنامه تون رو سخت ميكنه
چون عادت كرده توي ويندوز همه دكمه ها سمت راست باشن
راست ميگم ، من اينكار رو با VB6 كردم ولي اصلا مشتري راضي نبود
خودت رو اذيت نكن
با سلام
اين هم از كد درخواستي شما
Private Declare Function FindWindow Lib "User32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "User32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "User32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Sub R2L(Caption As String)
Handle = FindWindow(vbNullString, Caption)
If Handle = 0 Then Exit Sub
SetWindowLong Handle, -20, GetWindowLong(Handle, -20) Or &H400000
End Sub
Private Sub Form_Load()
R2L Me.Caption
End Sub
این کد همه چیز رو از راست به چپ میاره ولی حروف نوشته هارو برعکس نمیکنه
مزیتش اینه عنوان هر پنجره ای رو بنویسین اون پنجره RightToLeft میشه
اگر در قسمت زبان ویندوز برای فارسی هم تنظیم شود و در قسمت properties فرم RightToLeft را True کنید منوها راست چین خواهد شد
برای برداشتن دکمه ها هم میتوانید از قسمت properties فرم ControlBox را False کنید یا از گزینه های دیگر فقط بعضی دکمه ها را بردارید