自己写的一个Dll
把窗体F传到Dll 中
然后给窗体F中的一个控件Btn(TsuiImageButton类型) 的PicNormal (Tpicture 类) 赋值
F.Btn.PicNormal:=TPicture(GetPicBmp(ENormal)); //GetPicBmp(ENormal) 返回一个Bmp图片
如果不封装到Dll
直接在窗体中这种方法没问题
封装到Dll 后 就报 cannot assign a TBitmap to a TPicture 错
我换了其他方式
新建一个 Tpicture 然后再赋给 PicNormal 也会报类似错误
那位高人见过这的问题啊~~
在线等~
把窗体F传到Dll 中
然后给窗体F中的一个控件Btn(TsuiImageButton类型) 的PicNormal (Tpicture 类) 赋值
F.Btn.PicNormal:=TPicture(GetPicBmp(ENormal)); //GetPicBmp(ENormal) 返回一个Bmp图片
如果不封装到Dll
直接在窗体中这种方法没问题
封装到Dll 后 就报 cannot assign a TBitmap to a TPicture 错
我换了其他方式
新建一个 Tpicture 然后再赋给 PicNormal 也会报类似错误
那位高人见过这的问题啊~~
在线等~
用
SuiImageBtn.PicNormal:=TPicture(Bmp);
SuiImageBtn.PicMouseOn:=TPicture(Bmp);
可以赋值成功 Bmp 为一Bmp格式图片
能正常显示
说明类型是一样的 我查看结果也是一样的
在Dll中就报错
是一样的
在类里面是没问题的 到了Dll就报错
郁闷中
我试了用D7 的原生控件Image 在dll 下 用
TImage.Picture:=TPicture(Bmp); 报同样的错误
當你知道了原因,就會偏向采用上面的那個鏈接!
你去搜索“DLL 對象共享”,就會知道原因所在了....