关於toolbar上加上button求教 |
尚未結案
|
mchakuna
一般會員 發表:41 回覆:45 積分:17 註冊:2004-01-07 發送簡訊給我 |
procedure AddToolBar(const cnid :Integer); var Buttons: TTBButton; TBB :TBADDBitmap; himl :HWnd; bmp :TBitmap; nid :integer; begin if TBarHwnd<>0 then // handle of toolbar begin himl := ImageList_Create(32,32,ILC_COLOR16, 1, 1); bmp := TBitmap.Create; bmp.Handle := LoadBitmap(Hinstance,'BMP'); ImageList_Add(himl, bmp.Handle, 0); TBB.hInst := 0; TBB.nID := bmp.Handle; nid := SendMessage( TBarHwnd, TB_ADDBITMAP, 1, integer(@TBB) ); if nid>=0 then begin with Buttons do begin iBitmap := nid; idCommand := cnid; fsState := TBSTATE_ENABLED; fsStyle := TBSTYLE_BUTTON; dwData := 0; iString := 0; end; SendMessage(TBarHwnd, TB_ADDBUTTONS,1, integer(@Buttons)); SendMessage(TBarHwnd, TB_AUTOSIZE, 0, 0); end; end; end;上述代码是写在一个跟某个主程序通信的DLL上的, toolbar在主程序上. 按钮是被加上toolbar上. 但有几个问题 1) 请问怎样为新加入的按钮设置tooltips? 我按资料加上了一个tooltips, 但鼠标放在上面时无法显示tooltips, 是否还是处理mouse event? 2) 这个toolbar上原来的按钮可以移动和隐藏,而且改变的状态会被保存,在下次启动时会加按新的位置和状态来设按钮. 但我发现我引入的按钮无法做到这点.例如,我的按妞加到第10个位置, 原按钮有9个. 如果向前移到第n个位置则我的按钮会换成第n个按钮(不止是图换了, 整个按钮都换了). 请问有没有办法解决? 最后, 移动新的按钮后的位置和状态能不能保存下次启动时恢复?(我现在是每次运行都按上代码重新配置) |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |