C#Java中的一些小功能点总结(持续更新......)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#Java中的一些小功能点总结(持续更新......)相关的知识,希望对你有一定的参考价值。

前言:在项目中,有时候一些小的功能点,总是容易让人忽略,但是这些功能加在项目中往往十分的有用,因此笔者在这里总结项目中遇到的一些实用的小功能点,以备用,并持续更新......

1.禁用DataGridView表头的排序功能

 1        /// <summary>
 2         /// 禁止点击列表头进行排序
 3         /// </summary>
 4         /// <param name="dgv">当前DataGridView控件</param>
 5         private void DisableSortOrder(DataGridView dgv)
 6         {
 7             for (int i = 0; i < dgv.ColumnCount; i++)
 8             {
 9                 dgv.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
10             }
11         }

2.屏蔽双击标题栏窗口变小、点击标题栏移动窗口事件

 1         /// <summary>
 2         /// 屏蔽双击标题栏变小事件、点击标题栏移动窗口事件
 3         /// </summary>
 4         /// <param name="m"></param>
 5         protected override void WndProc(ref Message m)
 6         {
 7             //双击标题栏、移动窗口事件
 8             if (m.Msg != 0xA3 && m.Msg != 0x0003 && m.WParam != (IntPtr)0xF012)
 9             {
10                 base.WndProc(ref m);
11             }
12 
13         }

注:在需要不被移动的窗口中添加上述代码,其他具体消息,可查询相关资料,进行控制。

       m.Msg = 0xA3  -> 双击标题栏消息

       m.Msg = 0x0003 && m.WParam = (IntPtr)0xF012 -> 移动窗体消息

3. 登录时,当正确输入口令后,关闭登录窗口

    注:这个功能其实还比较重要,因为如果我们直接this.hide()或this.close()是不行的,这是就需要一个小技巧进行控制,具体如下代码:

   1.在Program.cs中如下:

     

1  LoginForm lf = new LoginForm();
2  lf.ShowDialog();
3  if (lf.DialogResult == DialogResult.OK)
4       Application.Run(new SelectItemForm());

 

2.然后在登录窗口中,当登录成功后进行如下控制:

       this.DialogResult = DialogResult.OK;
       this.Close();

通过以上两步就可以实现关闭登录界面,从而转到所需的主界面中。

持续更新中......by Shawn Chen 2017.7.10 晚

 


以上是关于C#Java中的一些小功能点总结(持续更新......)的主要内容,如果未能解决你的问题,请参考以下文章

QML/C++中常用功能整理(持续更新中...)

QML/C++中常用功能整理(持续更新中...)

OI中坑点总结(持续更新)

工作学习中的一些小的收获(持续更新)

iOS 小技巧总结,绝对有你想要的

golang 小知识-持续更新中