نمایش نتایج 1 تا 8 از 8

نام تاپیک: راست چین کردن TreeView

  1. #1

    Question راست چین کردن TreeView

    با سلام خدمت اساتيد عزيز
    چطور ميشه در VB6 براي فارسي نوشتن TreeView رو راست چين کرد؟
    من توی فوروم سرچ کردم اما چيزی پيدا نکردم.

  2. #2

    نقل قول: راست چین کردن TreeView

    این کد رو در یک ماژول کپی کنید:
    Rem Hamed Masafi
    Rem Ineed: No Module!

    '##ModelId=43DEADE7000F
    Const GWL_EXSTYLE = -20
    '##ModelId=43DEADE70020
    Const WS_EX_LAYOUTRTL = &H400000
    '##ModelId=43DEADE7002E
    Const WS_EX_NOINHERITLAYOUT = &H100000
    '##ModelId=43DEADE7003E
    Const RDW_INVALIDATE = &H1

    '##ModelId=43DEADE603B9
    Private Type RECT
    '##ModelId=43DEADE603C8
    Left As Long
    '##ModelId=43DEADE603D8
    Top As Long
    '##ModelId=43DEADE603D9
    Right As Long
    '##ModelId=43DEADE70000
    Bottom As Long
    End Type

    '##ModelId=43DEADE7004E
    Private Declare Function RedrawWindow Lib "user32.dll" (ByVal hwnd As Long, lprcUpdate As RECT, ByVal hrgnUpdate As Long, ByVal fuRedraw As Long) As Long

    '##ModelId=43DEADE7006E
    Private Declare Function GetWindowRect Lib "user32.dll" (ByVal hwnd As Long, lpRect As RECT) As Long

    '##ModelId=43DEADE7007F
    Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long

    '##ModelId=43DEADE7009C
    Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

    '##ModelId=43DEADE700BB
    Private Declare Function EnumChildWindows Lib "user32.dll" (ByVal hWndParent As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long

    '##ModelId=43DEADE700CE
    Private Sub RTLForm(hwnd As Long)
    Dim OldLong As Long
    Dim rc As RECT

    OldLong = GetWindowLong(hwnd, GWL_EXSTYLE)
    SetWindowLong hwnd, GWL_EXSTYLE, OldLong Or WS_EX_LAYOUTRTL Or WS_EX_NOINHERITLAYOUT

    GetWindowRect hwnd, rc
    RedrawWindow hwnd, rc, 0&, RDW_INVALIDATE
    End Sub

    '##ModelId=43DEADE700DB
    Private Function EnumChildProc(ByVal hwnd As Long, ByVal lParam As Long) As Long
    RTLForm hwnd
    EnumChildProc = True
    End Function

    '##ModelId=43DEADE700FA
    Public Sub RTLWindow(hwnd As Long, Optional GetAllChilds As Boolean = False)
    RTLForm hwnd
    If GetAllChilds Then EnumChildWindows hwnd, AddressOf EnumChildProc, ByVal 0&
    End Sub





    و سپس :
    RTL_Form.RTLWindow Treeview1.hwnd, True

  3. #3

    نقل قول: راست چین کردن TreeView

    میشه یه توضیحی در مورد کد بديد.
    من کپی کردم توی یک module اما اتفاقی نیافتاد!

  4. #4
    کاربر دائمی آواتار 3dboy1
    تاریخ عضویت
    مهر 1387
    محل زندگی
    اصفهان
    پست
    224

    نقل قول: راست چین کردن TreeView

    با سلام
    ماژول درست هست
    از اين كد استفاده كنيد
    RTLWindow TreeView1.hwnd, True


    كد را در فرم لود برنامه قرار بدين

    موفق باشي

  5. #5

    نقل قول: راست چین کردن TreeView

    از هردو عزیز ممنونم
    جواب داد
    خدا علمتون رو زیاد کنه.

  6. #6

  7. #7
    کاربر دائمی آواتار soheil_programmer
    تاریخ عضویت
    شهریور 1384
    محل زندگی
    تکه ای خاک از همین سرزمین
    پست
    311

    Exclamation نقل قول: راست چین کردن TreeView

    نقل قول نوشته شده توسط BlackDal مشاهده تاپیک
    ضمناً یادم رفت بگم با این کد می تونید هر کنترلی (مثل Toolbar ، StatusBar یا خود فرم) رو راست به چپ کنید.
    با سلام

    این ماژول روی ToolBar بدرستی عمل نمیکند!
    یعنی Toolbar را Right2Left کرد اما هیچیک از کلیدهای موجود روی Toolbar دیگر کار نمی کنند!

  8. #8

    نقل قول: راست چین کردن TreeView

    دوست گرامي اين را امتحان كن واسه من كه جواب داده
    SetWindowLong Treeview1.hwnd, -20, &H400000

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •