08-12-17, 01:09 AM
(آخر تعديل لهذه المشاركة : 08-12-17, 02:46 AM {2} بواسطة عبد العزيز البسكري.)
السّلام عليكم و رحمة الله و بركاته
إخواني الأكارم أرجو أن تكونوا بتمام الصحّة و العافية إن شاء الله
لو تكرّمتم بالمساعدة لتخطّي هذه الإشكالية ..
ما أريده هو تعطيل خاصيّة الخروج من الفورم بواسطة ال X .. أو تعطيله
طبعا لا أريد تغيير الخاصية FormBorder ..... إلى None
حاولت بهذا الكود الأوّل .. فعلا يقوم بتعطيل الزر X ..لكن بمجرّد إضافة Theme للمشروع .. يصبح بدون مفعول
كود :
Imports System.Runtime.InteropServices ' Disable X
Public Class Form1
' Disable X
<DllImport("user32.dll")> _
Private Shared Function GetSystemMenu(ByVal hwnd As IntPtr, ByVal bRevert As Integer) As IntPtr
End Function
<DllImport("user32.dll")> _
Private Shared Function GetMenuItemCount(ByVal hMenu As IntPtr) As Integer
End Function
<DllImport("user32.dll")> _
Private Shared Function RemoveMenu(ByVal hMenu As IntPtr, ByVal nPosition As Integer, ByVal wFlags As Integer) As Integer
End Function
<DllImport("user32.dll")> _
Private Shared Function DrawMenuBar(ByVal hwnd As IntPtr) As Integer
End Function
Private Const MF_BYPOSITION As Integer = &H400&
Private Const MF_REMOVE As Integer = &H1000&
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim hSysMenu As IntPtr = GetSystemMenu(Me.Handle, False)
If hSysMenu Then
Dim subMenusCount As Integer = GetMenuItemCount(hSysMenu)
RemoveMenu(hSysMenu, subMenusCount - 1, MF_BYPOSITION Or MF_REMOVE)
DrawMenuBar(Me.Handle)
Else
MsgBox("Cann't find the system menu.", MsgBoxStyle.Exclamation)
End If
End Sub
End Class
حاولت بهذا الكود الثاني .. و أيضا يشتغل بطريقة ممتازة .. لكن بدون Theme .. و بمجرّد إضافة Theme للمشروع يصبح عديم المفعول ..
كود :
Public Class Form1
Private Const CP_NOCLOSE_BUTTON As Integer = &H200
Protected Overloads Overrides ReadOnly Property CreateParams() As CreateParams
Get
Dim myCp As CreateParams = MyBase.CreateParams
myCp.ClassStyle = myCp.ClassStyle Or CP_NOCLOSE_BUTTON
Return myCp
End Get
End Property
End Class
الثيمات التي أقصدها هي IrisSkin4 ..
هل هناك إخواني الأكارم طريقة أخرى مجرّبة لتعطيل هذا ال X .. بوجود ثيمات للمشروع
بارك الله فيكم و لكم مقدمًا
تحياتي
قناتنا على اليوتوب