SendMessage的小问题,我看不懂的代码

xww617 2003-06-05 09:34:30
动态向一个ImageList中加系统图标
void __fastcall TForm1::FormCreate(TObject *Sender)
{
HWND HToolBar = ToolBar2->Handle;

//取得与ImageList组件关联
//这里的SendMessage可以这样用吗?这样用的原理是什么?
SNDMSG(HToolBar, TB_SETIMAGELIST, 0, (LPARAM)ImageList1->Handle);

//再由系统加载图标到ImageList中,并显示出来
//这里的(LPARAM)HINST_COMMCTRL是什么意思?
SNDMSG(HToolBar, TB_LOADIMAGES, 0,
(LPARAM)HINST_COMMCTRL);
}

动态向ImageList中加载图标,还有什么办法?
...全文
87 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
huzhangyou 2003-06-08
  • 打赏
  • 举报
回复
mark
net205 2003-06-06
  • 打赏
  • 举报
回复
SNDMSG是什么???????是: yingyys(鹰) 说的那 是个宏定义?????????还是自己定的函数》》》》》》》》》》》

COKING 2003-06-06
  • 打赏
  • 举报
回复
SNDMSG 就是 宏
#define SNDMSG SendMessage
winterxu416 2003-06-06
  • 打赏
  • 举报
回复
SNDMSG(HToolBar, TB_LOADIMAGES, 0, (LPARAM)HINST_COMMCTRL);
TB_LOADIMAGES是window的宏定义,如果把这个宏当作消息发送的时候,后面的参数wParam是图片的样式,lParam是实例。
TB_SETIMAGELIST也是同样的道理,具体内容请参照MSDN。
NowCan 2003-06-05
  • 打赏
  • 举报
回复
查MSDN是最好的办法。
查TB_SETIMAGELIST和TB_LOADIMAGES,他会告诉你答案。
yingyys 2003-06-05
  • 打赏
  • 举报
回复
SNDMSG 是个宏定义吧
HUANG_JH 2003-06-05
  • 打赏
  • 举报
回复
动态向ImageList中加载
ImageList1->GetIcon(...)

Returns the image specified by Index as an icon into the Image parameter.

void __fastcall GetIcon(int Index, Graphics::TIcon* Image);
atfrist 2003-06-05
  • 打赏
  • 举报
回复
學習
zhangyuzhou 2003-06-05
  • 打赏
  • 举报
回复
TImageList的Add,如:
Image1->Picture->LoadFromFile("F:\\图标文件\\珍藏\\BmpToolbar\\Toolbar1.bmp");
ImageList1->Width = 20;
ImageList1->Height = 20;
ImageList1->Add(Image1->Picture->Bitmap, NULL);
for(int i=0; i<ToolBar1->ButtonCount; ++i)
{
ToolBar1->Buttons[i]->ImageIndex = i;
}

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧