关于Visual Basic 6.0类开发(上) (转)
关于Visual Basic 6.0类开发(上) (转)[@more@]关于Visual Basic 6.0类开发(上)2001-02-03· 新天·yesky 对程序员和编程爱好者来说,VB中类的技术是学习中的一个难点,在大型软件的开发过程中,模块(Moudle)、控件(Active ocx)、链接库(Active dll)和类(Class moudle)构成了系统化、高效化的软件工程,而类的技术是控件和链接库技术的基础,因此掌握类的理论和编程方法是非常有意义的。(一)类的基本定义和应用概述; 类是包含了方法、属性、数据成员的高级代码模块,它既在模块的范畴之内,又是一个没有图形界面的Active
成功软件开发者的9种编程习惯 (转)
成功软件开发者的9种编程习惯 (转)[@more@]好的原程序做出好的软件 有些人会想:只要程序运行结果好,就不管原程序编得怎样。但绝对不是这样的。软件不是一次性就作完的,有必要做修改,扩展等管理。所以原程序要尽量作成易看懂,管理方便。 这样做,第一是为了软件开发者方便,其次还会影响到软件的性能。管理不方便的程序不会作出好的软件。 希望通过这篇文章能学到好的编程习惯。要理解这文章的内容,你至少要懂得1个开发工具语言。这里举例说明的都是C语言,但你对C语言没有了解也不要担心。这里说明的是原理而不是特定的语言
VB==这个玩笑有点酷 (转)
VB==这个玩笑有点酷 (转)[@more@]这个玩笑有点酷2000-10-18· 不详·yesky 此程序演示怎样在VB中调用api修改注册表,让程序每次启动都会执行,运用shell函数,操做文本文件,屏蔽系统功能,做出一个能够修改系统的程序(当然能和你的朋友开个玩笑),并且用事件key_press接收密码来关闭程序。 模块中声明: ’创建子键 Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" _ (ByVal hKey As Long, ByVal lpSubKey As String, _ phkResult As Long) As Long ’创
微软智囊团揭秘 (转)
微软智囊团揭秘 (转)[@more@]担负突破现有操作系统重任--微软智囊团揭秘 去年夏天,早在微软提出它的雄心勃勃的.NET战略时,在将它的windows操作系统移植到Internet上以前,总裁盖茨就已着眼于新的挑战了。 盖茨想用人直接与机器对话的界面,来取代基于鼠标点击的操作系统。尽管让机器直接和人们对话的念头其实和星际旅行的梦想一样古老,但一旦成功后,它的意义将彻底不同于微软用Windows来取代DOS操作系统。 但是当开始实施这样计划时,盖茨马上意识到在微软总部没有任何人能处理这项工作,这里所有的用
大型WAV文件的播放 (转)
大型WAV文件的播放 (转)[@more@]大型WAV文件的播放 在多媒体软件的设计中经常要处理声音文件,用windows提供的api函数sndPlaySound可以实现小型WAV文件的播放。但是当WAV文件大于可用内存时,sndPlaySound函数就不能进行播放,那么如何利用MCI播放大型音频文件呢?本文将介绍一种方法。Windows支持两种RIFF(resource interchange file format,“资源交互文件格式”)音频文件:MIDI的RmiD文件和波形音频文件格式WAV文件,本文将介绍如何用MCI命令播放大型WAV文件。用sndPlaySound播放音频文件只需要一行代码。比如实现异步播放的方法为snd
Use Case的作用 (转)
Use Case的作用 (转)[@more@] 1、Use Case的作用: 我个人认为Use Case仅仅用来反映用户需求,并且在对象分析过程中,能够起到一个查漏补缺的作用。但是使用“先确定Use Case,再指认对象”实在是一种愚蠢的方法(恕我直言)。我个人认为,指认对象使用Yourdon在《Objuect Oriented Analysis》中提到的使用CheckList的方法在实践中是比较实用的。我近来读到的几本书,也印证了我的想法。就我我个人在实践中的经验,使用“首先确定Use Case”策略,非常容易导致分析员滑入“功能分解”的泥沼。而且从Use Case来导出对象
需求变更 (转)
需求变更 (转)[@more@] 关于需求变更对软件结构的冲击,我想如果使用面向对象方法效果会好一些。Yourdon在《object Oriented Analysis》中有一个被人广泛引用的结论。就是对于软件结构言,最容易变化的首先是流程,其次是接口,在次是对象的属性,最后才是对象本身。拿一个单位的人事管理系统来举例子,最容易变的肯定是流程,单位的一道文件就可能改变比如入职,辞职,调动等等流程。接口的易变性要小一点,比如原来的脱机接口变成联机接口,增加一些额外的用户界面,报表生成等等。对象的属性(包括对象之间的关系)其实就很不容易
用JAVASCIRPT写的一个动态显示日期的函数! (转)
用JAVASCIRPT写的一个动态显示日期的函数! (转)[@more@]<script language="Javascript">function showtime(){ var GetTime = new Date(); var Years = GetTime.getYear(); var Months = GetTime.getMonth(); var Days = GetTime.getDate(); var Hours = GetTime.getHours(); var Minutes = GetTime.getMinutes(); var Seconds = GetTime.getSeconds(); var Dn = 'AM'; if (Hours<=9) { Hours='0'+Hours; } if (Hours==0 || Hours>12)
有关API字符串--API programmer请看之二 (转)
有关API字符串--API programmer请看之二 (转)[@more@] Visual Basic如何传递字符串到动态链接库XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 现在让我们来面对这个奇怪的问题:Visual Basic如何向外部的动态链接库传递BSTR类型的字符串。 我们已经知道,Visual Basic内部使用Unicode编码,也就是说,BSTR字符串使用Unicode格式。windows NT了使用Unicode编码,但是,Windows 9x却不支持Unicode(除非某些特例)。让我们来看一下一个BSTR变量传递到一个外部的动态链接库(win32 ap
有关API字符串--API programmer请看之一 (转)
有关API字符串--API programmer请看之一 (转)[@more@]win32 api Programming with Visual Basic 作者:Steven Roman 摘自《Win32 API Programming with Visual Basic》。 请联系:nuts@oreilly.com或http://www.oreilly.com. 前言: 字符串很容易把人搞糊涂,但是只要关心一下细节其实还是可以做到心中有数的。主要的问题是术语“string”在Visual Basic中至少有两种不同的使用方式。 在Visual Basic什么叫做string?Visual Basic文档中是这样说的: 由一组有次序的相邻的字符组成的相对于数字来说是
用ASP实现电子贺卡 (转)
用ASP实现电子贺卡 (转)[@more@] 关键词:ASP 电子贺卡程序的数据库结构。(这仅代表我个人的在某一段时间的看法)。 表ECARD 贺卡的编号 ID 自动编号字段贺卡的标题TITLE 贺卡的作者author 贺卡的大类别catalog1 贺卡的二级类别catalog2 贺卡的类型cardtype 标明是flash卡,还是图片(可能还有Java卡) 大图片的名称image 当然可以是flash或是其他文件的名称,可以包括路径 小图片的名称simage 表order_card,用来存放预定的贺卡。 预定贺卡
JavaScript窗口功能指南之命名窗口和框架 (转)
JavaScript窗口功能指南之命名窗口和框架 (转)[@more@]Javascript窗口功能指南之命名窗口和框架(作者:听风编译 2001年01月19日 11:35) 当你创建一个框架结构的文档时,<FRAME>标记的NAME属性定义了每一个框架的名字,如下: <FRAMESET> <FRAME NAME="left" SRC="toolbar.html"> <FRAME NAME="right" SRC="index.html"> </FRAMESET> 在例子中,文档包含2个框架:left和right。在文档toolbar.html中,链接代码就象下面的一样: <A HREF="about.html" TARGET="right">
JavaScript窗口功能指南之创建弹出窗口 (转)
JavaScript窗口功能指南之创建弹出窗口 (转)[@more@]Javascript窗口功能指南之创建弹出窗口(作者:听风编译 2001年01月19日 11:35) Inte.NET Explorer 5.5支持一个新的window对象的方法:creatPopup()。你可以向下面一样创建一个弹出窗口: var popupObj = window.createPopup(); 当你创建了这个对象后,弹出窗口并不显示。你必须要调用它的show方法: popupObj.show(yOffset, xOffset, width, height, referenceObj) 在这里: yOffset 是弹出窗口距离屏幕左上角的水平偏移。 xOffset 是弹出窗口距离屏幕
JavaScript窗口功能指南之操纵窗口 (转)
JavaScript窗口功能指南之操纵窗口 (转)[@more@]Javascript窗口功能指南之操纵窗口(作者:听风编译 2001年01月19日 11:35) 一旦你得到了表示窗口的变量,你就能通过各种方法来操纵它。在前面的介绍中,我们讨论过close()方法: win = window.open("http://www.docjs.com/", "js"); win.close(); Javascript提供了许多方法与属性,我们可以使用它们来控制窗口。 移动、滚动、改变大小 下面的方法(N4+,IE4+)负责个定窗口的移动、滚动以及大小改变操作: // 移动窗口的屏幕位置到指定的偏移x 、y(绝对移
JavaScript中的正则表达式(2) (转)
JavaScript中的正则表达式(2) (转)[@more@] 正则表达式对象的属性及方法 预定义的正则表达式拥有有以下静态属性:input, multiline, lastMatch, lastParen, leftContext, rightContext和$1到$9。其中input和multiline可以预设置。其他属性的值在执行过exec或test方法后被根据不同条件赋以不同的值。许多属性同时拥有长和短(perl风格)的两个名字,并且,这两个名字指向同一个值。(Javascript模拟perl的正则表达式) 正则表达式对象的属性 属性含义 $1...$9 如果它(们)存在,是匹配到的子串 $_ 参见input $* 参见multiline $&
编程必读:Netscape 6 支持的对象和属性列表 (转)
编程必读:Netscape 6 支持的对象和属性列表 (转)[@more@]请大家好好珍藏,绝对值得! 编程必读:.NETscape 6 支持的对象和属性列表 作者:http://lucky.myrice.comE-Mail:amxh@21cn.com window object Window parent object Window scrollbars object BARProp frames object WindowCollection length number name string scrollX number scrollY number window object Window self object Window navigator object Navigator appCodeName string appName string appVersion string language stri
动态改变屏幕设置 分辨率、颜色等。 (转)
动态改变屏幕设置 分辨率、颜色等。 (转)[@more@]动态改变屏幕设置 '- 定义Private Declare Function lstrcpy _Lib "kernel32" Alias "lstrcpyA" _(lpString1 As Any, lpString2 As Any) _As LongConst CCHDEVICENAME = 32Const CCHFORMNAME = 32Private Type DEVMODEdmDeviceName As String * CCHDEVICENAMEdmSpecVersion As IntegerdmdriverVersion As IntegerdmSize As IntegerdmDriverExtra As IntegerdmFields As LongdmOrientation As IntegerdmPaperSize As IntegerdmPaperlength As IntegerdmPaperWidth As IntegerdmScale As Int
利用VB产生屏幕变暗的效果. (转)
利用VB产生屏幕变暗的效果. (转)[@more@]利用VB产生屏幕变暗的效果.想利用VB编程实现屏幕变暗的效果(向关闭Win95时的效果),只要按下面的步骤来做1、在Form1中加入两个Commandbutton和一个PictureBox.2、在Form1的代码窗口中添加以下代码:Private Type RECTLeft As LongTop As LongRight As LongBottom As LongEnd TypePrivate Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As LongPrivate Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As LongPrivate Declare Function CreatePat
"堆"和"栈"的基本概念(C/C++初学者必读) (转)
"堆"和"栈"的基本概念(C/C++初学者必读) (转)[@more@]"堆"和"栈" 作者:arya 堆(heap)和栈(stack)是C/C++编程不可避免会碰到的两个基本概念。首先,这两个概念都可以在讲数据结构的书中找到,他们都是基本的数据结构,虽然栈更为简单一些。 在具体的C/C++编程框架中,这两个概念并不是并行的。对底层机器代码的研究可以揭示,栈是机器系统提供的数据结构,而堆则是C/C++函数库提供的。 具体地说,现代计算机(串行执行机制),都直接在代码底层支持栈的数据结构。这体现在,有专门的寄存器指向栈所在的地址,有专门的机器指令完成数据入
程序员,你的逻辑思维有多强(一道推理题测试,不可错过) (转)
程序员,你的逻辑思维有多强(一道推理题测试,不可错过) (转)[@more@] 要做一个程序员,逻辑思维能力是关键,写程序也是对该能力的一种锻炼,这里有一个测试题,你可以对自己现在的能力进行评诂。也希望大家回贴谈谈感受。 本题是柏林大学的一次考试题,要求在30分钟内做出,不过只有少于10%的人完成了要求。计分是这样的,共150分,从1到30分钟,每加1分钟减2分,那么30分钟答出就是90分,是及格分;从30分钟以后每加1分钟减1分。我当时用了22分钟,大家也试试,看自己能得多少分。 原题:有五位小姐排成一列,所有的