چگونه می توان در زمان اجرای برنامه در سی شارپ فرم را ثابت کرد که با موس نتوان آن را جابجا کردc
Printable View
چگونه می توان در زمان اجرای برنامه در سی شارپ فرم را ثابت کرد که با موس نتوان آن را جابجا کردc
میتونی خاصیت formborderstyle فرم رو به none تغییر بدی که البته عوارض داره از جمله از بین رفتن تایتل بار فرم.
یه سر به این تاپیکها بزن
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
**********************
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
**********************
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
یعنی c# با این همه پیشرفت مشخصه ای برای ثابت نگهداشتن فرم نداره
برای ثابت نگه داشتن فرمهای فرزند (البته من با VB نوشتم خودتون تبدیلش کنید) بصورت زیر عمل میکینم :
کد:
Public Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Integer, _
ByVal nPosition As Integer, ByVal wFlags As Integer) As Integer
Public Declare Function GetSystemMenu Lib "user32.dll" (ByVal hwnd As IntPtr, _
ByVal bRevert As Boolean) As IntPtr
Public Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Integer) As Integer
Public Const MF_DISABLED As Integer = &H2&
Public Const MF_BYPOSITION As Integer = &H400&
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim frm2 As New Form2
frm2.MdiParent = Me
frm2.StartPosition = FormStartPosition.CenterScreen
frm2.Show()
DisableMove(frm2)
End Sub
Public Function DisableMove(ByRef oForm As System.Windows.Forms.Form)
Call RemoveMenu(GetSystemMenu(oForm.Handle, False).ToInt32, 1, MF_DISABLED Or MF_BYPOSITION)
Call DrawMenuBar(oForm.Handle.ToInt32)
End Function