• 全部
  • API 调用
  • 基础类
  • 控件与界面
  • 数据库相关
  • DataWindow
  • 项目管理
  • Web 应用
  • 脚本语言

ActiveSkin4.0的问题,我用的是mid的,动态生成菜单的系统.

yaterman2 部门经理  2005-02-16 09:23:08
我的使用方法:

1: 首先定义外部函数:

PUBLIC FUNCTION ulong GetDC(ulong hwnd) LIBRARY "user32.dll"
PUBLIC FUNCTION ulong GetDesktopWindow() LIBRARY "user32.dll"
PUBLIC FUNCTION ulong ReleaseDC(ulong hwnd,ulong hdc) LIBRARY "user32.dll"

2: 定义实例变量:

ulong iu_skin,iu_dsktop

3: 在主窗体中加入控件:

在打开的窗口中选择Insert Control栏
在下面选中ActiveSkin Control并放到窗口上,并命名为ole_1

4: 窗口的open事件:

string ls_skindir
ls_skindir="skin\Web-II.skn" //皮肤文件相应的路径与名称

//创建skin对象

ole_1.Object.loadskin(ls_skindir)
ole_1.Object.ApplySkin(Handle(This))
iu_skin=GetDC(Handle(This))
iu_dsktop=GetDC(GetDesktopWindow())

5: 窗口的close事件:

//注销skin对象

ReleaseDC(Handle(This),iu_skin)
ReleaseDC(Handle(This),iu_dsktop)
CloseUserObject(ole_1)

6: 当使用菜单打开窗口
w_main.ole_1.object.ApplySkin(Handle(w_sheet))
w_main.ole_1.object.applyskinbyname(handle(w_sheet),"form")
Opensheet(lw_sheet,w_frame_rlgl,ai_menucount,original!)
.......
打开主窗口是便了,可是mid下Opensheet都打不开了.没有反应,请那位赐教.
...全文
145 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
yaterman2 2005-02-23
关注
回复
shinesky 2005-02-22
不過﹐toolbar還是變不了﹐要改變toolbar只有自己做一個
回复
shinesky 2005-02-22
直接這樣是不行的﹐對MDI不支持﹐原因估計是PB的MDI不符合windows的標准﹐我試過當我在MDI的MAIN窗口加上一個其它的控件﹐然后再修改mdi_1的位置后﹐就可以正常使用了﹐原因可以是因為修改后不再認為是MDI窗口﹐被認為是普通窗口﹐所以可以正常使用﹗
回复
yaterman2 2005-02-22
up
回复
wjlforever 2005-02-19
帮你顶!
回复
wjlforever 2005-02-19
你的不错!为什么不出来,不清楚!反正activeskin对pb支持不是很好!我用过放弃了!
回复
yaterman2 2005-02-18
没有人回答
回复
相关推荐
发帖
PowerBuilder
创建于2007-09-28

864

社区成员

PowerBuilder 相关问题讨论
申请成为版主
帖子事件
创建了帖子
2005-02-16 09:23
社区公告
暂无公告