(2)如何只编译不运行?
(3)?如果变量包含二进制数,则将它声明为 Byte 数据类型的数组。在转换格式期间用 Byte 变量存储二进制数据就可保留数据。当 String 变量在 ANSI 和 Unicode 格式间进行转换时,变量中的任何二进制数据都会遭到破坏。在下列任何一种情况下,Visual Basic 都会自动在 ANSI 和 Unicode 之间进行转换:读文件时、写文件时、调用 DLL 时、调用对象的方法和属性时。
(4)?
对 Array 变量,VarType 的值等于数组元素与数据类型返回值之和。例如,这个数组包含 Double 值:
Private Sub Form_Click () Dim dblSample (2) As Double
Dim dblX As Double
Debug.Print VarType(dblSample), VarType(dblX), dblSample(0), dblSample(1), dblSample(2) End Sub (5)?动态数组可以改变维数?
Option Explicit
Dim Matrix1() As Integer
Sub test()
ReDim Matrix1(19, 29)
Matrix1(0, 0) = 1
Matrix1(19, 29) = 33
Debug.Print Matrix1(0, 0), Matrix1(19, 29)
ReDim Matrix1(19, 29, 2)
Matrix1(0, 0, 1) = 1
Matrix1(19, 29, 2) = 33
Debug.Print Matrix1(0, 0, 1), Matrix1(19, 29, 2)
End Sub
(1)在窗体和类模块中,必须将定长字符串声明为 Private。还有结构。
()有一些情况需要不顾现存窗体或对象的状态而结束应用程序。为此,Visual Basic 提供了 End 语句。End 语句使应用程序立即结束:在 End 语句之后的代码不会执行,也不会再有事件发生。特别是,Visual Basic 将不执行任何窗体的 QueryUnload、Unload 或 Terminate 事件过程。对象的各个引用将被释放,但如果定义有自己的类,Visual Basic 将不执行由这些类所创建对象的 Terminate 事件。??除 End 语句以外,Stop 语句可以暂停一个应用程序。然而,Stop 语句只能在调试时使用,因为它不释放对象的引用。
(2)可用一个不显示工具栏的 MDI 窗体来使用在运行时不可见的控件(比如 Timer 控件)。为了做到这一点,在 MDI 窗体上放置一个图片框,把控件放到图片框中,然后把图片框的 Visible 属性设置为 False。?这么说有工具栏的MDI窗体不能用timer了?
()tigerzhao的注释为何尾部还有一个引号
()是不是所有设置标准控件的值属性的代码都会引起click事件?
()注意 尽管可以通过赋值给另一个数组(ArrayFunction = x())
来返回一个数组,但出于性能方面的考虑,并不推荐使用这种方法。这个和ArrayFunction = x
有区别么(在机器实现上)?
Public Function ArrayFunction(b As Byte) As Byte() Dim x(2) As Byte x(0) = b x(1) = b + CByte(200) x(2) = b + b ArrayFunction = x End Function
()大家如何看MsHFlexGrid这个控件?感觉它是个比较复杂的控件,要用好它的层次化数据显示功能,需要了解shape。实际中大家用的多么?
()
例如,如果把字符串或数组赋给 Variants,Variants 将包含一个指向字符串和数组数据备份的指针。在 32 位系统中,指针只使用了 Variants 的 4 个字节,而且 Variants 中实际上不存在数据。
若要存储一个对象,Variants 将包含该对象引用,就象对象变量所做的一样。对字符串和数组来说,也只使用 Variants 的 4 个字节。
数字数据类型存储在 Variants 中。不管什么样的数据类型,Variants 仍然占 16 个字节。
?它到底是占4字节还是16位字节?
()Forms 集合只能使用数字索引来访问。这是因为没有唯一的字符串值与窗体关联。例如,多个窗体可以有相同的标题,或者加载的多个窗体有相同的 Name 属性。?
()怎样确保一个全局公共变量只能被某类的对象改变?即如何实现真正意义上的静态类变量。
()object model里那个计数大家都用么?
()Class Builder 好用否?
()OLE DROP AND DRAG其实是基于剪贴板的吧?
()为何要用Shift And 7??
Add a Textbox control to the form and this procedure in the KeyDown event:
Private Sub Text1_KeyDown(KeyCode As Integer, _
Shift As Integer)
ShiftKey = Shift And 7
Select Case ShiftKey
Case 1 ' or vbShiftMask
Print "You pressed the SHIFT key."
Case 2 ' or vbCtrlMask
Print "You pressed the CTRL key."
Case 4 ' or vbAltMask
Print "You pressed the ALT key."
Case 3
Print "You pressed both SHIFT and CTRL."
Case 5
Print "You pressed both SHIFT and ALT."
Case 6
Print "You pressed both CTRL and ALT."
Case 7
Print "You pressed SHIFT, CTRL, and ALT."
End Select
End Sub
()You can actually place several pieces of data on the Clipboard at the same time, as long as each piece is in a different format.? 不同于OFFICE剪贴板
()??statement和函数的区别。比如,erase是个statement。