delphi 实现用户自定义通知(User Notification)
unit Form_Main; interface uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, ActiveX, ComObj, ShlObj,
ShLwApi; type TFormMain = class(TForm, IQueryContinue, IUserNotificationCallback)
Button1: TButton;
CheckBox1: TCheckBox;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
I: IUserNotification2;
public
function QueryContinue: HRESULT; stdcall;
function OnBalloonUserClick(const pt: TPoint): HRESULT; stdcall;
function OnLeftClick(const pt: TPoint): HRESULT; stdcall;
function OnContextMenu(const pt: TPoint): HRESULT; stdcall;
end; var
FormMain: TFormMain; implementation {$R *.dfm} procedure TFormMain.Button1Click(Sender: TObject);
begin
I.SetIconInfo(Application.Icon.Handle, 'IUserNotification2演示');
I.SetBalloonInfo('提示标题', '这是提示内容', );
I.SetBalloonRetry(, , );
I.Show(self as IQueryContinue, , self as IUserNotificationCallback);
end; procedure TFormMain.FormCreate(Sender: TObject);
begin
I := CreateComObject(CLSID_UserNotification) as IUserNotification2;
end; procedure TFormMain.FormDestroy(Sender: TObject);
begin
I := nil;
end; function TFormMain.OnBalloonUserClick(const pt: TPoint): HRESULT;
begin
ShowMessage('Balloon User Click!');
end; function TFormMain.OnContextMenu(const pt: TPoint): HRESULT;
begin
ShowMessage('On Context Menu');
end; function TFormMain.OnLeftClick(const pt: TPoint): HRESULT;
begin
ShowMessage('Left Click!');
end; function TFormMain.QueryContinue: HRESULT;
begin
if CheckBox1.Checked then
Result := S_OK
else
Result := S_FALSE;
end; end.
delphi 实现用户自定义通知(User Notification)的更多相关文章
- Android消息通知(notification)和PendingIntent传值
通知栏的自定义布局:转:http://blog.csdn.net/vipzjyno1/article/details/25248021 拓展 实现自定义的通知栏效果: 这里要用到RemoteViews ...
- HTML5开启浏览器桌面通知 Web Notification
说明: 1.Chrome要求必须https才可以开启浏览器通知 2.显示图片在本服务器,不支持跨越 3.自定义声音Chrome不播放,Firefox正常播放 代码如下: <!-- /** * @ ...
- iOS 远程通知(Remote Notification)和本地通知(Local Notification)
ios通知分为远程通知和本地通知,远程通知需要连接网络,本地通知是不需要的,不管用户是打开应用还是关闭应用,我们的通知都会发出,并被客户端收到 我们使用远程通知主要是随时更新最新的数据给用户,使用本地 ...
- 介绍一个比较酷东西:HTML5 桌面通知(Notification API)
Notification API 是 HTML5 新增的桌面通知 API,用于向用户显示通知信息.该通知是脱离浏览器的,即使用户没有停留在当前标签页,甚至最小化了浏览器,该通知信息也一样会置顶显示出来 ...
- redis键空间通知(keyspace notification)
一.需求 在redis中,设置好key和生存时间之后,希望key过期被删除时能够及时的发送一个通知告诉我key,以便我做后续的一些操作. 二.环境 系统:windows10 php:7.1 redis ...
- HTML5桌面通知:notification
最近由于公司业务需要,领导要求IM消息有像网页微信那样有新消息桌面右下角弹出一个提示框的效果!由于自己才疏学浅,一时还没明白微信是怎么实现的!所以只能问百度(因为懒得FQ)咯! 在网上搜索了N久,心都 ...
- 通知(Toast+Notification)
Toast简要说明:(前面已经用过好多次了) Toast是一种非持久的(在屏幕上面留一会儿就消失了),提供给用户简洁提示信息的视图. 它不阻断用户的操作,一般用于显示一些不重要的信息.(比方说设置音量 ...
- HTML5桌面通知:notification api
1. 为什么需要HTML5的桌面通知 传统的桌面通知可以写一个div放到页面右下角自动弹出来,并通过轮询等等其他方式去获取消息并推送给用户.这种方式有个弊端就是:当我在使用京东 进行购物的时候,我是不 ...
- 通知(Notification)的使用
新建一个 NotificationTest项目,并修改 activity_main.xml 中的代码,如下所示:<LinearLayout xmlns:android="http:// ...
随机推荐
- 使用Excel随机函数产生大众评委的6位登录密码
第一步:填写公式 如下图所示:选中B2单元格输入公式 =TEXT(ROUNDUP(RAND()*1000000,0),"000000") ,然后回车. 可复制的纯文本格式: = ...
- python操作符与流程控制
操作符: 算术运算: + - * / % // ** 逻辑运算:and or not 身份运算: is not is 不可变数据类型:数字 字符串 字典key 可变数据 ...
- 测试oracle数据库连接
1.ping 192.168.0.12.telnet 192.168.0.1 1521 按下ctrl+] 组合键出现命令回显才是端口连接成 3.tnsping 192.168.0.1:1521/db
- Guava实现 过滤文本,排序,转换内容,分组计数转换map 等等
重要点 :看注释 从access.log中统计数据 对healthcheck.html的请求不计入统计 输出请求总量,以及GET和POST分别的总量 输出请求最频繁的10个接口及其次数,按次数降序 输 ...
- idea error:Command line is too long
今天在正在本地运行的项目中写了一个无关项目的测试类,执行main函数时报错如下: 解决方案: 找到项目根目录下的.idea/workspace.xml,添加内容: <component name ...
- linux进程端口防火墙
进程端口: 1.netstat –apn :查看所有的进程和端口使用情况 2.查看8080端口是否被占用 [root@localhost bin]# lsof -i:8080 3.查看防火墙开放的端口 ...
- 了解一下,Java 虚拟机
1.1 - 概述 Java 总述:Java 不仅是一门编程语言,还是一个由一系列计算机软件和规范形成的技术体系,这个技术体系提供了完整的用于软件开发和跨平台部署的支持环境,并广泛应用于 嵌入式 ...
- SVN提交报错(SVN的bug)
提交的时候报错: Failed to execute WebDAV PROPPATCHsvn: Commit failed (details follow):svn: At least one pro ...
- ROS 进阶学习笔记(12) - Communication with ROS through USART Serial Port
Communication with ROS through USART Serial Port We always need to communicate with ROS through seri ...
- uva-188-枚举
题意:直接模拟 注意,w[i]不能是0 #include <string> #include<iostream> #include<map> #include< ...