如果是QQ那种样式的,不需要这么麻烦,直接给lpData赋值就可以:lpData.szTip:='第一行'+#13#10+'第二行'; 托盘区不支持鼠标进入、离开、悬停消息,可以支持鼠标移动消息。
你能用CTRL+D把 代码对齐后再和我们讨论下么。。。
[quote=引用 8 楼 qq_33802316 的回复:] [quote=引用 7 楼 santiaodahan 的回复:] [quote=引用 6 楼 qq_33802316 的回复:] [quote=引用 5 楼 santiaodahan 的回复:] 如果是QQ那种样式的,不需要这么麻烦,直接给lpData赋值就可以:lpData.szTip:='第一行'+#13#10+'第二行'; 托盘区不支持鼠标进入、离开、悬停消息,可以支持鼠标移动消息。
[quote=引用 7 楼 santiaodahan 的回复:] [quote=引用 6 楼 qq_33802316 的回复:] [quote=引用 5 楼 santiaodahan 的回复:] 如果是QQ那种样式的,不需要这么麻烦,直接给lpData赋值就可以:lpData.szTip:='第一行'+#13#10+'第二行'; 托盘区不支持鼠标进入、离开、悬停消息,可以支持鼠标移动消息。
[quote=引用 6 楼 qq_33802316 的回复:] [quote=引用 5 楼 santiaodahan 的回复:] 如果是QQ那种样式的,不需要这么麻烦,直接给lpData赋值就可以:lpData.szTip:='第一行'+#13#10+'第二行'; 托盘区不支持鼠标进入、离开、悬停消息,可以支持鼠标移动消息。
[quote=引用 5 楼 santiaodahan 的回复:] 如果是QQ那种样式的,不需要这么麻烦,直接给lpData赋值就可以:lpData.szTip:='第一行'+#13#10+'第二行'; 托盘区不支持鼠标进入、离开、悬停消息,可以支持鼠标移动消息。
WM_MOUSEMOVE $200 就是鼠标移动啊 procedure TForm1.WMNID(var msg: TMessage); begin begin case msg.LParam of WM_LBUTTONUp: Form1.Visible := not Form1.Visible; WM_RBUTTONUP: ShowMessage('您点击的是右键'); WM_MOUSEMOVE: //移动啊; End; Memo1.Lines.Add(DateTimeToStr(Now)+':'+ IntToStr(msg.LParam)); End; end; 只要鼠标移动你就不停的显示你的消息界面,并把消息显示界面的时间不停保持。 当没有鼠标移动事件,你计数器时间到,就自动关闭了
我记得是有MouseMove消息的,在 MouseMove触发的时候,记录下坐标,做个进入状态,如果没有启动定时器,则启动定时器,然后不断在定时器中判定,如果是进入状态,GetCursorPos获取当前的鼠标位置,和记录的坐标位置比较,如果一致,则说明鼠标没动!只要有移动,其实他会触发MouseMove事件的,然后关闭定时器,鼠标离开了
1,183
社区成员
22,335
社区内容
加载中
试试用AI创作助手写篇文章吧