線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:906
推到 Plurk!
推到 Facebook!

关於toolbar上加上button求教

尚未結案
mchakuna
一般會員


發表:41
回覆:45
積分:17
註冊:2004-01-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-03 19:35:59 IP:211.147.xxx.xxx 未訂閱
 
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个按钮(不止是图换了, 整个按钮都换了). 请问有没有办法解决? 最后, 移动新的按钮后的位置和状态能不能保存下次启动时恢复?(我现在是每次运行都按上代码重新配置)
系統時間:2024-05-14 3:58:53
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!