标题:创建工具栏问题
只看楼主
菜鸟AB
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2015-5-13
结帖率:100%
 问题点数:0 回复次数:3 
创建工具栏问题
首先创建一个普通窗口(不是对话框),不带菜单,只有工具栏。在
消息循环WM_CREATE中,使用CreateToolbarEx专用函数,能很好创建。
书中说也可以使用CreateWindowEx来逐步创建,可是位图上不去,自己抠
了一周,请高手指点。
CreateWindowEx逐步创建,下面是我创建的片段
ID_BITMAP   equ    300
   .const
szToolbarWindow32  db  'ToolbarWindow32',0
proc  uses ebx edi esi,hWnd,uMsg,wParam,lParam
                local  @TBADDBITMAP:TBADDBITMAP
       .if      eax ==  WM_CREATE
                invoke  CreateWindowEx,NULL,offset szToolbarWindow32,\
                        NULL,WS_VISIBLE or WS_CHILD or CCS_NORESIZE \
                        or TBSTYLE_TOOLTIPS or  CCS_ADJUSTABLE,10,10,390,50,\
                        hWnd,ID_EDIT,hInstance,NULL
                mov     hToolbar,eax
                pop     hInstance   (模块句柄)
                push    @TBADDBITMAP.hInst
                mov     eax,ID_BITMAP  (位图ID)
                mov     @TBADDBITMAP.hID,eax
                invoke  SendMessage,hToolbar,TB_ADDBITMAP,10,addr @TBADDBITMAP
;*********************我怀疑这句,是不是我写的有问题?
                invoke  SendMessage,hToolbar,TB_SETBITMAPSIZE,36,36 + 36 shl 16
                invoke  SendMessage,hToolbar,TB_SETBUTTONSIZE,36,36 + 36 shl 16
                invoke  SendMessage,hToolbar,TB_BUTTONSTRUCTSIZE,sizeof TBBUTTON,0
                invoke  SendMessage,hToolbar,TB_ADDBUTTONS,10,offset stToolbar
;******************片段到此

逐步创建,什么都能上去,就是位图上不去,在线等......
搜索更多相关主题的帖子: 工具栏 对话框 local 
2015-05-13 19:37
取名字
Rank: 8Rank: 8
等 级:贵宾
威 望:21
帖 子:236
专家分:924
注 册:2015-4-27
得分:0 
pop   hInstance (模块句柄)
push   @TBADDBITMAP.hInst
楼主上面这2句代码错了,应改为:
push   hInstance (模块句柄)
 pop    @TBADDBITMAP.hInst
先将模块句柄入栈,然后出栈赋给@TBADDBITMAP.hInst
2015-05-14 20:37
菜鸟AB
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2015-5-13
得分:0 
回复 2楼 取名字
改后的确运行完美。基础知识记反,教训啊。。。
感谢'取名字'大神的热情指导。
2015-05-19 07:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-445254-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.159496 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved