vb.net 鼠标拖拽窗体
简单的一个类型,可以让鼠标在窗体内任意位置进行拖拽。
使用方法很简单:
' 让当前窗体可以用鼠标拖拽
Dim dform As New DragForm(Me)
' 是否使用手型鼠标指针
dform.UseHandCursor = True
' 切换启用、关闭
dform.SwitchEnable()
' 关闭功能
dform.DragEnable = False
类型代码如下:- 阅读全文 -
简单的一个类型,可以让鼠标在窗体内任意位置进行拖拽。
使用方法很简单:
' 让当前窗体可以用鼠标拖拽
Dim dform As New DragForm(Me)
' 是否使用手型鼠标指针
dform.UseHandCursor = True
' 切换启用、关闭
dform.SwitchEnable()
' 关闭功能
dform.DragEnable = False
类型代码如下:- 阅读全文 -
解码Unicode编码字符,如将 \u82f9\u679c
解码为 苹果
。
- 阅读全文 -
枚举类型一般情况下多作为描述性质的参数,我们可以组合不同的属性到枚举之中,而且可以很容易地从枚举对象中读取出是否包含指定的参数(开关)。
枚举参数的好处是可以将多个选项值存放到一个变量之中,减少存储空间。
因为在.NET中,一个布尔值(Boolean
)就占用4字节,而一个四字节的Integer
可以存储高达32个选项开关!
- 阅读全文 -
今天修改了一下自己以前写的程序,然而在POST数据时却发生了“基础链接已关闭”的奇怪BUG,调试了半天也没有发现原因。
Dim request As HttpWebRequest = WebRequest.Create("https://xxxxxxx/api")
request.Proxy = Nothing '关闭代理,否则速度巨慢无比
request.Method = "POST"
Dim postdata As String = "POST数据..."
Dim byteArray As Byte() = Encoding.UTF8.GetBytes(postdata)
request.ContentType = "application/x-www-form-urlencoded"
request.ContentLength = byteArray.Length
Dim dataStream As Stream = request.GetRequestStream() '在这里发生错误
dataStream.Write(byteArray, 0, byteArray.Length)
dataStream.Close()
Dim response As HttpWebResponse = request.GetResponse()
' ...
后来Google了半天,发现可能是默认的安全协议类型 SecurityProtocolType
错误,SecurityProtocolType
为ssl3
+tls1.0
协议。SecurityProtocolType
的枚举类型中并没有其他协议的参数,只好由我自己查询枚举值,再手动设置到 ServicePointManager.SecurityProtocolType
的全局属性之中了!' 因为此属性乃是全局属性,只需在使用WebRequest前执行此代码即可
Net.ServicePointManager.SecurityProtocol = 48 Or 192 Or 768 Or 3072 'Ssl3 Tls Tls1.1 Tls1.2
' 貌似用这个参数可以使用系统内最新的安全协议?
Net.ServicePointManager.SecurityProtocol = 2147483647
' .net 4.7以上采用的是系统默认,似乎也是最新的安全协议?
Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.SystemDefault
如果还是发生错误,或者用户的机器显示无效的安全协议,表明该机器需要更新.NET框架补丁:- 阅读全文 -
鉴于某些不能说的原因,谷歌商店在国内无法访问,而且大部分国产安卓系统都阉割了Google Play的功能。
所以我整理了一些可以直接下载APK安装包的网站,只不过这些网站同样逃不开和谐,仍需要科学上网才能下载。
- 阅读全文 -
某些静态资源(如图片、字体、JS库、CSS样式表等),并不需要经常修改,我们便可以通过传递Cache-Control
Header让浏览器客户端将这些资源加入到本地缓存中,当用户下次浏览时便可直接通过缓存加载资源文件,而不需要重新下载。
在Apache服务器中设置数据缓存,其实只需要通过 .htacess 文件即可完成,非常的简单!
- 阅读全文 -
这是一篇旧文章,不过我强烈推荐给还在使用Win7、Win10的用户们使用!
我曾经推荐过一款XP的任务栏管理工具 Taskix,这是一款在XP系统中拖动任务栏内标签的小工具。
自从我用了Windows 7系统之后,就一直没找到类似这种工具。
事实上Win7系统也提供了一个任务栏标签的分组系统,可以让相同程序的窗体界面排列在一起。但这个分组并不灵活,如果你想要拖动一个标签,你只能拖动整个分组。
并且Win7的分组功能是强制的,要关闭的话貌似还需要自己去修改注册表。
今天介绍的这个工具 7+ Taskbar Tweaker 就能为你解决这些问题。
首先是官方下载地址 https://rammichael.com/7-taskbar-tweaker (官方自带多国语言,包括简中繁中)
分流下载 https://www.lanzoux.com/i3h7xsd
下载安装过后,可以看到程序的设置界面,如下:
功能强大、选项丰富,除了可以让你在分组内调整窗体位置,还可以禁用分组,还原旧版Windows的窗体模式。
当然,其他的一些功能就由您自己去发现吧!
- 阅读全文 -
在 .NET 中,有引用类型与值类型两种对象类型,而其中值类型是“不可空”的类型,比如你设定一个int i = null
,那么它会使用默认值0
来为自己赋值。
然而有些时候,我们需要一个可空的值类型(比如数据库中的可空字段),那么该怎么办呢?
- 阅读全文 -