1.奇怪的代码:
Screen.Cursor := TCursor(crMaletDown);
FillChar(HoleInfo, sizeof(HoleInfo), 0);
Live.LoadFromResourceName(HInstance, 'Live');
2.你的柔情我永远不懂!!!关于构造函数中的sender参数!
var
newmainmenu:tmainmenu;
newmainment:=tmainmenu.create(form1);
form1为程序中的主窗体,form1作为此函数的参数,究竟有何意义???请高手指教!!!

解决方案 »

  1.   

    1.不知道你想说什么
    Screen.Cursor := TCursor(crMaletDown);将变量/对象crMaletDown转换为TCursor类别赋予Screen.Cursor,也就是桌面鼠标指针。FillChar(HoleInfo, sizeof(HoleInfo), 0);将HoleInfo用0填充
    Live.LoadFromResourceName(HInstance, 'Live');不知道live是什么东西,不过这句的意思是调用资源里面的名字叫live的资源给live2.tmainmenu.create(form1),看看TMainMenu的构造函数源码,这里传递的form1其实是mainmenu的父窗体句柄
      

  2.   

    1.奇怪的代码:
    Screen.Cursor := TCursor(crMaletDown);
    FillChar(HoleInfo, sizeof(HoleInfo), 0);
    Live.LoadFromResourceName(HInstance, 'Live');
    从资源中加载鼠标指针,
    2、指明tmainmenu的Owner是Form1
      

  3.   

    Screen.Cursor:=TCursor(crMaletDown);
    //为全局变量的Cursor赋一个值,在赋值进行强制类型转换
    FillChar(HoleInfo,SizeOf(HoleInfo),0);
    //填充
    Live.LoadFromResourceName(HInstance,'Live');
    //调用资源2.首先楼主需要明确一点,在VCL,一般构造函数中传递的不是Sender,一般都是Owner;这个参数表示最后被创建对象的内存由谁来进行释放.....是一个容器对象的指针!
      

  4.   

    1:Screen.Cursor := TCursor(crMaletDown);
    FillChar(HoleInfo, sizeof(HoleInfo), 0);
    Live.LoadFromResourceName(HInstance, 'Live');
    加载鼠标指针
    2:参数不是sender,而是Owner,是拥有者,代表newmainment的拥有者是Form1