var
    lpData : PNotifyIconData;
begin
    lpData := new(PNotifyIconDataA);
    lpData.cbSize := 88;//SizeOf(PNotifyIconDataA);
    lpData.Wnd := Handle;
    lpData.hIcon := Application.Icon.Handle;
    lpData.uCallbackMessage := WM_BARICON;
    lpData.uID :=0;
    lpData.szTip := ……//这里要动态的提示,怎么写呢?好象不是String类型的。
    lpData.uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
    Shell_NotifyIcon(NIM_ADD,lpData);
end;

解决方案 »

  1.   

    我的意思是
    如果我定义一个变量,存放提示信息的话,该怎么定义??然后再赋值给  lpData.szTip ??
      

  2.   

    就是我从配置文件中提取一个字符串做为托盘图标的提示,但不能赋值给 lpData.szTip ,因为 lpData.szTip 不是字符串格式的,而是 array [0..63] of AnsiChar 格式的。我该怎么赋值??
      

  3.   

    strcopy(lpData^.sztip,pchar('你的字符串或者字符串变量'));//定义Mouse放在ICON上的显示的Tip
      

  4.   

    Shell_NotifyIcon(NIM_DELETE,lpData);
    lpData.szTip :='  ';
    Shell_NotifyIcon(NIM_ADD,lpData);
    即可