请问 TB_GETBUTTONTEXT 及 TB_.... 如何使用? 请高手帮助, 200 分(100分)

  • 主题发起人 主题发起人 PENGS
  • 开始时间 开始时间
P

PENGS

Unregistered / Unconfirmed
GUEST, unregistred user!
我想用 TB_GETBUTTONTEXT 求

ToolBar 的 Buttons 中的 Button 的 Text ,但我不会使用。

wParam = (WPARAM) idButton;
lParam = (LPARAM) (LPSTR) lpszText;

如已知 ToolBar 的 Handle 通过 TB_GETBUTTONCOUN 求得 Buttons Count
现在想得知 Button 1 的相关信息,包括 Text ImageIndex Tooltips 等信息
如何实现.

请高手们帮助/ help me; please
如果能提供 TOOLBAR CONTROL 参数 及 函数的相关资料另加分.多谢,
请赐教.
 
难道这道题容易得没人愿意回答?
 
...
uses CommCtrl
var
; i, iButton, ImgIndex: Integer;
; Buffer: array[0..255] of Char;
; Str: string;
; ToolInfo: ToolInfo;
; hToolTip: HWND;
...
; iButton := SendMessage(ToolBar1.Handle, TB_BUTTONCOUNT, 0, 0);
; for i := 0 to iButton - 1 do
; begin
; ; //获得 Button 的 Text
; ; SetString(Str, Buffer, SendMessage(ToolBar1.Handle, TB_GETBUTTONTEXT, i, Longint(@Buffer)));
; ; //获得 Button 的 ImageIndex
; ; ImgIndex := SendMessage(ToolBar1.Handle, TB_GETBITMAP, i, 0);
; end;
; //以下获取 Tooltip 未经验证,一般 SDK 编程应该是 ToolBar 中用到了 ToolTip 这种
; //Common Control,但 VCL 中封装的 ToolBar 用的是 Application 全局的 HintWindow,
; //因此对于一般 Delphi 程序的 ToolBar 取得的 ToolTip Handle 都是 0。也许对 VC 等
; //编制的程序能行。
; hToolTip := SendMessage(ToolBar1.Handle, TB_GETTOOLTIPS, 0, 0);
; if (hToolTop <> 0) then
; begin
; ; ToolInfo.cbSize := SizeOf(TToolInfo);
; ; ToolInfo.hwnd := ToolBar1.Handle,
; ; ToolInfo.lpszText := Buffer;
; ; for i := 0 to iButton - 1 do
; ; begin
; ; ; ToolInfo.uId := i;
; ; ; SendMessage(hToolTip, TTM_GETTOOLINFO, 0, Longint(@ToolInfo));
; ; ; SetString(Str, Buffer, StrLen(PChar(Buffer)));
; ; ; ShowMessage('Tooltip Text is: ' + Str);
; ; end;
; end;
最好查一下 MSDN。
 
老兄,帮我看个问题——
http://www.delphibbs.com/delphibbs/dispq.asp?lid=695113
 
老兄,看了你的报表打印控件源程序,才知道你对DevExpress系列颇有研究。
你能告诉我如何在用print system连接dxdbgrid时在每页的最下边生成每页
小计吗?
期待你的回复。
Thanks in advance.
 
我给你发个示范吧
 
多人接受答案了。
 
后退
顶部