C#学习及与delphi的比较(二)
C#的ToolTip(delphi叫Hint)机制非常怪,不是像delphi的元件一样,每个TControl有一个Hint属性,C#有一个ToolTip元件,当把这个元件从工具箱拉到form上后,选中form上的任何control元件,在属性窗体(Object Inspector)上就会多出一个属性“toolTip1上的ToolTip”,如果多拉几个ToolTip元件到form上,就会多出现几个这样的属性“toolTip2上的ToolTip”,“toolTip3上的ToolTip”.......怪异,实在是怪异,不知道叫什么设计模式。查看ToolTip的函数,有两个GetTooTip(Control AControl),SetTooTip(Control AControl,string AToolTip),感觉TooTip元件就是一个Dictionary,但是没有属性来知道某个ToolTip元件为多少个Control设定了ToolTip字串。
另一个奇怪的是,ToolStripStatusLabel/ToolStripDropDownButton等元件比较特殊,他们却有一个ToolTipText属性,他们实现Hint的机制又不靠ToolTip元件。
相关文档:
一个C# xml 序列化错误
事发现场:
xml序列化的数据中存储的节点数据是
<Module>536870912</Module> (xml文件中)
对应的类属性是
public short Module { get; set; } (C#类中)
序列化的代码:
public static FMDSTimeSeriesDefinitio ......
在Delphi中的Record类型中,与之C语言对应的即是结构体类型(struct
),也可能是为了符合C语言或C++程序员的习惯,对于它在Delphi中的应用存在的一些问题进行初步的说明。在Delphi中的记录体类型有两种方式定义
Type
RecTest = record (packed
)
ID :integer; ......
Delphi的VCL框架在创建应用时TApplication是一个自动创建的隐藏窗口,其它创建的窗口是自动以该窗口为窗口,这就导致创始的主窗口在任务栏的系统菜单只有三项,只要在主窗口的Create事件中将系统菜单用Application的系统菜单替换,并将SysCommand消息转发到主窗口就正常了。
unit Unit1;
interface
uses
Windows ......
1.SHIFT+鼠标左键 先选中任一控件,按键后可选中窗体(选中控件后按Esc效果一样)
2.Shift+F8 调试时弹出CPU窗口。
3.Shift+F10 等于鼠标右键(Windows快捷键)。
&n ......
在多CPU或多核CPU中,会随机的获得不同的序列号.这就为我们根据CPU序列号来制作注册机带来了很大的麻烦。
Windows 2000/XP允许设置进程和线程的关系。换句话说,可以控制哪个 CPU 能够运行某些线程。这称为Affinity Mask。Windows提供了设置相似性的函数SetProcessAffinityMask ,使用它可 ......