是这样的,它的帮助文档里也提到了这一点,在常见问答里,你注意看一下
要分别对窗体进行皮肤应用在子窗体的load事件中设置是比较合适的,但为了统一风格,不要为该窗体重新加载相同的皮肤,而是使用主窗体的皮肤对象,应用到新窗体,免得以后换肤时麻烦
form1(在mdiform中好像默认叫frmmdi吧?)中有一个skin1,然后
form1.skin1.applyskin form2.hwndok了,记得在换肤时重新应用一遍

解决方案 »

  1.   

    我的程序中有一个窗口祖先为w_master(所有的窗口都继承它), 在Open事件中我写了于下代码://Begin Load Skin
    If This.ClassName() = 'sys_w_main_frame' Then
       ole_1.Object.LoadSkin('xplook.skn')
       sys_w_main_frame.ole_1.Object.ApplySkin(Handle(This))
    ElseIf IsValid(sys_w_main_frame) Then
           sys_w_main_frame.ole_1.Object.ApplySkin(Handle(This))
    End If
    //End Load Skin我程序的跟你讲的是一样的呀! 
    我也这样写过,对所有的窗口LoadSkin, ApplySkin 也不行ole_1.object.LoadSkin('xplook.skn')
    ole_1.object.ApplySkin(Handle(This))救命呀!!! 第五天啦!!!
      

  2.   

    sys_w_main_frame.ole_1.Object.ApplySkin(Handle(This))
    这里的this是指哪个啊,我不明白了,是在子窗体中有一个skin对象吗?
    要是mdi窗体中的,那this就应该是指主窗体吧?