حذف حاشیه های یوزر فرم

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • ahmada1983

    • 2012/08/02
    • 42

    حذف حاشیه های یوزر فرم

    سلام
    در یوزر فرم ایا این امکان وجود داره که حاشیه (ابی رنگ) اطراف فرم رو برداشت و نشون داده نشه؟
    ممنون
  • ahmada1983

    • 2012/08/02
    • 42

    #2
    جواب رو یکی از دوستان برامفرستادن که جواب داد البته من خودم زیاد سردر نیوردم
    اگه کسی از اساتید بتونن توضیحی در مورد این کدها بدن ممنون می شم
    Option Explicit
    #If VBA7 And Win64 Then
    Private Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
    Private Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Private Declare PtrSafe Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) As Long
    Private Declare PtrSafe Function FindWindowA Lib "user32" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    #Else
    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 Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) As Long
    Private Declare Function FindWindowA Lib "user32" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    #End If
    Const GWL_STYLE = -16
    Const WS_CAPTION = &HC00000
    'UserForm position
    Dim FormX As Double, FormY As Double

    Private Sub UserForm_Initialize()
    Dim lngWindow As Long, lFrmHdl As Long
    lFrmHdl = FindWindowA(vbNullString, Me.Caption)
    lngWindow = GetWindowLong(lFrmHdl, GWL_STYLE)
    lngWindow = lngWindow And (Not WS_CAPTION)
    Call SetWindowLong(lFrmHdl, GWL_STYLE, lngWindow)
    Call DrawMenuBar(lFrmHdl)
    End Sub
    Private Sub UserForm_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    ' Starting position when button is pressed
    If Button = 1 Then
    FormX = X
    FormY = Y
    End If
    End Sub
    Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    ' Move the form if the left button is pressed
    If Button = 1 Then
    Me.Left = Me.Left + (X - FormX)
    Me.Top = Me.Top + (Y - FormY)
    End If
    End Sub
    Private Sub OKButton_Click()
    Unload Me
    End Sub

    کامنت

    • elam

      • 2014/10/21
      • 67
      • 54.00

      #3
      فکر نکنم توضیحش به این راحتی ها باشه

      اگه کارت راه افتاده به نظرم بی خیال توضیح کدها بشین

      کامنت

      • ahmada1983

        • 2012/08/02
        • 42

        #4
        سلام
        فیل پیوست رو از کد دوستان کمک گرفتم و توی فرم پیوست زدم که جواب داد ولی مشکل بزرگ اینه که این کد فقط برای سیستم عامل 32 بیتی کار می کنه چطوری کد رو باید تغییر داد که هم وی 32 و هم 64 بیتی جواب بده
        ممنون
        فایل های پیوست شده

        کامنت

        • میثم مقدم نیا

          • 2017/03/23
          • 558
          • 41.00

          #5
          نوشته اصلی توسط ahmada1983
          سلام
          فیل پیوست رو از کد دوستان کمک گرفتم و توی فرم پیوست زدم که جواب داد ولی مشکل بزرگ اینه که این کد فقط برای سیستم عامل 32 بیتی کار می کنه چطوری کد رو باید تغییر داد که هم وی 32 و هم 64 بیتی جواب بده
          ممنون
          سلام
          فایل پیوست را ملاحضا فرمایید
          فایل های پیوست شده
          [HR][SIZE=5][COLOR="#0000FF"][FONT=Times New Roman][B] در سرزمینی کہ نتوان مردانہ زیست ، مردانہ مردن بهتر از این زندگیست [/B][/FONT][/COLOR][/SIZE][/HR]

          کامنت

          چند لحظه..