磁性窗体源码开源 - 开源研究系列文章

对于IT软件开源领域,笔者关注的还不够多,虽然前面共享过一些源码,但是对软件开源所做的内容还不够(见文:开篇:开源研究的启示 - 开源研究系列文章)。所以,后续笔者会陆续开源一些自己以前编写的程序源码,就当做笔者开源的一点贡献吧。

  本文将要描述以前编写的一个VB6的仿Winamp的磁性窗体的源码,这个源码是04年笔者在大学毕业设计之余编写的,如果大家有需要的就看看吧。此源码是VB6编写的,如果需要C#版本请大家自己编写。从VB6源码也能转换到VB.NET,但是因为是x86架构,在x64架构的操作系统里没法使用,这个大家需要关注。

  本文涉及到的VB6的架构,本项目只是针对磁性窗体类模块编写的,如果需要高级的架构,请大家见文:VB程序架构分析。还有一个使用该类模块的小作品,见文:VB6 磁性移动窗体类模块MagneticFormHelper使用

 

  1、  先看看程序结构:

  

  这里定义了一个主窗体Form1,两个子窗体Form2,Form3。一个模块Module1,用来声明程序公共函数。一个clsHelpers类模块,用来声明使用到的帮助类。还有就是今天的主角clsMagneticForm类模块,声明了磁性窗体所使用到的函数。

 

  2、  下面看看Module1.bas。

  这里对磁性窗体的参数进行了设置。然后加载显示各个窗体。

 

  3、  下面看看clsHelpers.cls文件。

  

  这里声明了磁性窗体类模块变量,统一对类模块进行管理。具体功能描述见上面的VB6架构分析。

 

  4、  下面对窗体调用磁性窗体类模块进行描述。

  代码比较简单,直接在事件中进行调用即可。

  

 

  5、  下面主要对磁性窗体主类模块clsMagneticForm.cls进行分析。

  使用两个数组对窗体句柄和窗体位置、长度等进行了保存。

  设置主窗体(只有一个主窗体),还有多个子窗体,以及窗体吸附距离。

  这里是窗体鼠标单击下后的事件,重新获取了主窗体和子窗体的各个位置长度的,为下面的鼠标移动事件做准备。

  然后就是鼠标移动事件,这里处理了所有主窗体和子窗体的吸附,移动问题。

 

  6、  最后总结下。

  本文主要对仿Winamp磁性吸附、移动窗体的实现代码进行了简要的描述,其中主要使用主窗体和子窗体的联合移动这块比较实用。

  具体源码功能大家在使用时有问题请自行修改,或者联系笔者:lzhdim@163.com。

 

 

Etc.本文就当做笔者自己开源方面的一个开头点,希望后续有更多的代码能够开源分享给大家。

 

时间: 2024-08-01 13:31:24

磁性窗体源码开源 - 开源研究系列文章的相关文章

请问jdk源码该如何研究

问题描述 请问jdk源码该如何研究 各位大神,小弟最近想看看jdk源码,想看看里面各个功能是怎么实现的,源码在myeclipse里面可以看到,但是不知道该如何开始,应该从哪里开始,希望各位大神指点迷津,谢谢. 解决方案 1.知道这个API是干嘛的:(可以通过注释知道,英文水平好的可以看原版API文档,也可以下个中文版的API文档)2.Ctrl+O键,看里面有什么方法,先看构造方法,再看其他功能方法3.你喜欢研究那个方法就看那个方法吧.希望采纳,谢谢 解决方案二: 去oracle官网下载jdk使用

MP3文件ID3信息编辑器代码开源 - 开源研究系列文章

上次把磁性窗体的源码开源了,这次就开源另一个程序源码:MP3文件ID3信息编辑器.这个源码也比较简单,关键在于获取和写入MP3文件的这个ID3的信息即可.                                           这个操作信息编辑的就封装在MP3ID3.bas文件中.                     这里定义了类型ID3,因为ID3v1的信息是一个固定长度的文本串,所以通过这个类型我们能够看出来.          Title是该MP3文件的标题,长度是30个字

写在HBase源码分析前面的话

       本版块全部为HBase1.0.2相关源码分析文章,系个人研究源码原创写成,除对部分引用标示外,其余均为原创,或翻译源码注释.        该系列文章为与网友交流HBase学习,不做任何其他商业用途~~O(∩_∩)O哈哈~         由于水平有限,文章基本上是边读源码,边翻译注释,边分析源码写成,没有较强的前后逻辑性,我会在写完全部文章后再回头整理.         由于水平有限,文章中可能存在理解错误的地方,欢迎各位针对文章中的错误.问题或者其他指导建议,踊跃评论,多多指点

分布式事务系列(3.2)jotm分布式事务源码分析

1 系列目录 分布式事务系列(开篇)提出疑问和研究过程 分布式事务系列(1.1)Spring事务管理器PlatformTransactionManager源码分析 分布式事务系列(1.2)Spring事务体系 分布式事务系列(2.1)分布式事务模型与接口定义 分布式事务系列(3.1)jotm的分布式案例 分布式事务系列(3.2)jotm分布式事务源码分析 分布式事务系列(4.1)Atomikos的分布式案例 2 了解xapool 我们在前一篇文章中了解到jotm配合xapool共同完成了分布式事

《深入理解SPARK:核心思想与源码分析》一书正式出版上市

自己牺牲了7个月的周末和下班空闲时间,通过研究Spark源码和原理,总结整理的<深入理解Spark:核心思想与源码分析>一书现在已经正式出版上市,目前亚马逊.京东.当当.天猫等网站均有销售,欢迎感兴趣的同学购买.我开始研究源码时的Spark版本是1.2.0,经过7个多月的研究和出版社近4个月的流程,Spark自身的版本迭代也很快,如今最新已经是1.6.0.目前市面上另外2本源码研究的Spark书籍的版本分别是0.9.0版本和1.2.0版本,看来这些书的作者都与我一样,遇到了这种问题.由于研究和

深入理解Spark:核心思想与源码分析

大数据技术丛书 深入理解Spark:核心思想与源码分析 耿嘉安 著 图书在版编目(CIP)数据 深入理解Spark:核心思想与源码分析/耿嘉安著. -北京:机械工业出版社,2015.12 (大数据技术丛书) ISBN 978-7-111-52234-8 I. 深- II.耿- III.数据处理软件 IV. TP274 中国版本图书馆CIP数据核字(2015)第280808号 深入理解Spark:核心思想与源码分析 出版发行:机械工业出版社(北京市西城区百万庄大街22号 邮政编码:100037)

PHP网页游戏学习之Xnova(ogame)源码解读(一)_php实例

一. 引言 xnova(ogame)是一款世界上最火的战争策略类网页游戏之一,也是大部分同类网页游戏效仿的对象.你只需要网页浏览器,无需下载客户端就可进行的网络游戏. Xnova是个怎么样的游戏? 你是一个跨星系的统治者,利用不同的战略扩大你的实力.你将从一个自己的星球上开始你的事业,在那里你用现有的资源建造一个你的经济和军事基础.通过科学 研究你获得达到新的.优势的技术的入口和新的武器系统.随着游戏的进行你将对多个星球移民,与其它的玩家联盟,与其它的玩家作生意或者发动战争.无论你想 要做什么,

深入理解Spark:核心思想与源码分析. 导读

  大数据技术丛书   深入理解Spark:核心思想与源码分析 耿嘉安 著     Preface  前言 为什么写这本书 要回答这个问题,需要从我个人的经历说起.说来惭愧,我第一次接触计算机是在高三.当时跟大家一起去网吧玩CS,跟身边的同学学怎么"玩".正是通过这种"玩"的过程,让我了解到计算机并没有那么神秘,它也只是台机器,用起来似乎并不比打开电视机费劲多少.高考填志愿的时候,凭着直觉"糊里糊涂"就选择了计算机专业.等到真正学习计算机课程的时

C#源码500份

C Sharp  短信发送平台源代码.rar http://1000eb.com/5c6v ASP.NET+AJAX基础示例 视频教程 http://1000eb.com/89jc C# Winform qq弹窗 360弹窗 http://1000eb.com/89jf 精华志 C#高级编程(第七版)源码 http://1000eb.com/89k3 C#网络应用编程教案及代码.rar http://1000eb.com/89kh IPhone远程桌面xp控制+Desktop+Connect教程