کنترل فرم های Borderless | هستی پروژه

کنترل فرم های Borderless

      در این پست نحوه کنترل فرم های بدون حاشیه یا BorderLess را فرا خواهید گرفت. چنانچه دقت کرده باشید در زبان برنامه نویسی #C هنگام کار با فرم ها خاصیت FormBorderStyle به شما امکان تغییر ظاهر فرم را می دهد.

 

    ​این ویژگی می تواند یکی از مقادیر Sizeble ، FixedToolWindow ، SizableToolWindow ، FixedSingle، FixedDialog ، Fixed3D و None را داشته باشد که مقدار پیش فرض آن Sizeble می باشد.

    اما چنانچه شما بخواهید فرم خود را سفارشی و مطابق با سلیقه خود طراحی نماید می توانید این ویژگی را به مقدار None تغییر دهید. اختصاص این ویژگی به این خصیصه باعث می شود که دکمه های close، Minimize و Maximize غیر فعال ، نوار عنوان پنهان و یا اصطلاحاَ فرم شما BorderLess شود که در این صورت کاربر هیچگونه کنترلی بر روی این گونه فرم ها ندارد به عبارتی دیگر نمی توان آنها را بست یا حتی جا به جا نمود.

در این قسمت نحوه درگ کردن یا جا به جا کردن اینگونه فرم ها توسط ماوس را فرا خواهید گرفت.

قطعه کد زیر نحوه انجام اینکار را به شما نشان می دهد:

 

 


public partial class  BorderLessForm : Form
{
    private const int  WM_NCHITTEST = 0x84;
    private const int  HTCLIENT = 0x1;
    private const int  HTCAPTION = 0x2;



    protected override void  WndProc(ref  Message message)
    {
        base.WndProc(ref message);

    if (message.Msg == WM_NCHITTEST && (int)message.Result == HTCLIENT)
        message.Result = (IntPtr)HTCAPTION;

    public BorderLessForm()
    {
        InitializeComponent();
    }
}


یک دیدگاه نوشته شده است! می توانید دیدگاه خود را بنویسید

  1. رضا می‌گه:

    سلام دوست عزیز
    دستت درد نکنه جواب داد ولی هیچی نفهمیدم . کپی کردم . می تونی توضیح بدی؟
    به ایمیلم بفرست داداش
    ۱۴۵۱god@mailfa.org

دیدگاه خود را به ما بگویید.