对拖延的探索
...
Csharp强制设置系统焦点(前台窗口)
系统焦点在Windows中,系统的焦点就是当前处于前台的窗口。通过设置焦点,可以控制用户正在使用的应用程序。这里以winform应用为例。 Api调用C#需要调用Win32 Api才可以控制焦点,这里用到的是user32.dll中的SetForegroundWindow()函数 在微软提供的文档中[1],可以看到C++里的用法: 123BOOL SetForegroundWindow( [in] HWND...
Csharp接口进阶
在这篇文章里,曾经讲解过C#接口的基本概念。掌握这些基本概念后,本文将补充一个进阶内容。 显式接口成员实现 该功能用于为同一个类中实现的不同接口创建不同的方法(方法名称相同) 语法: 123456interface I1{void Method(string s);}interface I2{void Method(string s);}class MyClass:I1,I2...void I1.Method(string...
Csharp-winform窗口拖动详解
代码实现 首先,在设计器里双击增加以下三个方法,然后填入以下代码 12345678910111213141516171819202122232425262728293031323334 private Point mouseLocation;//表示鼠标对于窗口左上角的坐标的负数private bool isDragging;//标识鼠标是否按下 private void MainWindow_MouseDown(object sender,...
Csharp读书笔记(六)-枚举与集合
枚举 枚举只允许几个特定的值 enum数据类型只允许某个数据取某些特定的值 12345enum Computers{ Computer1=1,//不仅可以指定名称,还可以指定值 Computer2=2,...
Csharp读书笔记(五)-接口与抽象类
接口基本概念 接口告诉类必须实现某些方法和属性 如果没有实现,编译器会报错 接口可以定义一个类中必须有的方法,这样一个类只要实现接口,就可以做特定的事情 使用interface关键字定义接口 接口不能添加任何字段,因为它不存储数据(但是可以包含属性) 命名规范:接口名称以I开头 只需要在接口中添加方法名和参数,因为接口不做任何事情 接口中的所有方法都是抽象方法,不能有方法体 ^bbfa07 一个类只能继承一个类,但可以实现多个接口...
Csharp读书笔记(二)-数组
数组 数组是一组变量,可以存储和修改多个数据 创建数组时,需要指定类型、名称和元素数量 可以为引用创建数组,但是创建时只会创建引用变量,不会创建实例 必须分别为每一个对象创建实例 数组的索引是从0开始的 比如,创建一个元素数量为6的int数组,int[] numbers=new...