目的:

最近老是听到用户没有及时登录到eip中审批文件,导致事情延误的事情。细想一下也没办法,基于B/S下的工作流确实没有winform那样方便的提醒功能,虽然里面也有提醒,但也只是在eip打开的情况下才有。于是最近抽出了一点私人时间写了一个类似QQ消息提醒的东西。

技术:

1.webserivce:用于调用远端的工作流的接口

2.GDI+:绘制提醒框的界面。

3.多线程。

4.异步委托。

组件:

1.appconfig辅助类。

2.reg辅助类。用户写注册表。

3.SQL辅助类。访问数据库,用于验证用户身份。

4.第三方控件。

功能:

1.检验当前配置文件中的账号是否有效。

有效就执行提醒。无效就弹出账号设置界面。

2.类似QQ自动提醒。

3.可以设置开机自动运行。

4.密码或账号有误会自动终止并弹出账号设置界面。

图片:

1.账号设置界面

2.配置界面

3.参数配置界面

4.完成界面以及消息提醒界面

底下的小牛托盘便是。

5.运行时相关操作

代码:

由于这个是个小玩具,代码比较简单所以就不提供了,免得贻笑大方,而且网上也可以搜索的到,相关的代码。

这个是画qq消息框的源码。

Code
 1protected virtual void drawBorder (Graphics fx)
 2        {
 3            fx.DrawRectangle (Pens.Silver, 2, 2, Width - 4, ActualHeight - 4);
 4           // fx.DrawRectangle(new Pen(new SolidBrush(Color.FromArgb(49,191,239))),2,2,Width-4,16);
 5
 6            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(51, 94, 168))), 0, 0, Width, 0); 
 7            fx.FillRectangle(new SolidBrush(Color.FromArgb(59,191,239)),1,1,Width-2,17);
 8            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(141, 230, 255))), 0, 16, Width, 16); 
 9            // Top border
10            //fx.DrawLine (Pens.Silver, 0, 0, Width, 0);
11            //fx.DrawLine (Pens.White, 0, 1, Width, 1);
12            //fx.DrawLine (Pens.DarkGray, 3, 3, Width - 4, 3);
13            //fx.DrawLine (Pens.DimGray, 4, 4, Width - 5, 4);
14            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(51, 94, 168))), 0, 0, 0, ActualHeight);
15            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(59, 191, 239))), 1, 1, 1, ActualHeight);
16            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(141, 230, 255))), 2, 17, 2, ActualHeight); 
17            // Left border
18            //fx.DrawLine (Pens.Silver, 0, 0, 0, ActualHeight);
19            //fx.DrawLine (Pens.White, 1, 1, 1, ActualHeight);
20            //fx.DrawLine (Pens.DarkGray, 3, 3, 3, ActualHeight - 4);
21            //fx.DrawLine (Pens.DimGray, 4, 4, 4, ActualHeight - 5);
22            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(51, 94, 168))), 1, ActualHeight - 1, Width - 1, ActualHeight - 1);
23            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(141, 230, 255))), 2, ActualHeight - 2, Width - 2, ActualHeight - 2); 
24            /**///// Bottom border
25            //fx.DrawLine (Pens.DarkGray, 1, ActualHeight - 1, Width - 1, ActualHeight - 1);
26            //fx.DrawLine (Pens.White, 3, ActualHeight - 3, Width - 3, ActualHeight - 3);
27            //fx.DrawLine (Pens.Silver, 4, ActualHeight - 4, Width - 4, ActualHeight - 4);
28            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(51, 94, 168))), Width - 1, 1, Width - 1, ActualHeight - 1);
29            fx.DrawLine(new Pen(new SolidBrush(Color.FromArgb(141, 230, 255))), Width - 2, 16, Width - 2, ActualHeight - 2);
30            /**///// Right border
31            //fx.DrawLine (Pens.DarkGray, Width - 1, 1, Width - 1, ActualHeight - 1);
32            //fx.DrawLine (Pens.White, Width - 3, 3, Width - 3, ActualHeight - 3);
33            //fx.DrawLine (Pens.Silver, Width - 4, 4, Width - 4, ActualHeight - 4);
34        }

希望大家批评指正。

转载于:https://www.cnblogs.com/flyskyer/archive/2009/04/10/1432888.html

工作流之待办事宜消息提醒篇相关推荐

  1. Flowable全局监听器-待办消息提醒

    项目需要在每个待办Task到达时,发送一个消息提醒用户过来处理.不想在每个工作流单独加监听器,这时候可以使用Flowable的全局监听器. 定义一个监听器 package com.azhuzhu.fl ...

  2. UMX消息和待办事宜类型之间的转换方式

    UMX消息是供应宝系统通信单元,每种消息由(消息域,消息类型,消息ID)识别. 功能通过UMX消息交互序列实现. 一种UMX消息可用来实现不同的功能.UMX消息和功能没有一一对应关系. 待办事宜是一种 ...

  3. Win11系统如何设置任务栏新消息提醒

    用户在使用电脑的时候任务栏总会提醒用户一些待办事项.天气等等,但是有些win11用户跟小编反应自己升级系统后就没有收到过任务栏的消息.这是因为我们没有开启此功能所有无法接收到通知,下面我们就可以来看看 ...

  4. Windows Phone 实用开发技巧(18):使用SystemTray显示全局消息提醒

    在Windows Phone 7 (Nodo)之前的版本中,我们要在应用程序显示消息提醒,或者是进度提示,通常的做法在页面的顶部放置一个专门的容器(如一个Grid),里面放置一些文本和Performa ...

  5. iOS: 教你给UI控件添加Badge(消息提醒小圆点)

    PPBadgeView 1.前言 最近项目的一个需求是在UIView, UITabBarItem, UIBarButtonItem 这三种类型的控件上添加消息提醒小圆点(Badge),一开始找了一个星 ...

  6. 用 Telegram bot 搭个消息提醒服务

    这是「进击的Coder」的第 645 篇技术分享 作者:刘志军 来源:Python 之禅 " 阅读本文大概需要 6 分钟. " 最近用 Telegram 时间比较多 对开发者来说, ...

  7. 推送通知的跳转处理和消息提醒

    转载请注明出处:http://blog.csdn.net/Chay_Chan/article/details/72640876 ###推送通知的跳转处理和消息提醒   消息推送功能在App开发中经常用 ...

  8. 前端实现实时消息提醒消息通知

    需求:当用户收到待审批和待处理的消息后状态栏图标闪烁并进行弹窗提醒,点击消息跳转到指定的消息. 实现方式:web端+c端. 说明: 客户不需要非常的及时的接收消息,所以未对接websocket协议,使 ...

  9. 架构师图谱·微服务消息队列篇

    1. 概述 "架构师图谱"是一个很宏大的命题,特别是优秀的架构师自身也是"由点到面再到图",一点点成长积累起来,尝试写这系列文章的目的更多的是结合自身的一些经验 ...

最新文章

  1. python xlrd 的merged_cells 里面四个参数的含义
  2. 学了这些,他薪资涨了40%,收割了阿里、头条、快手等大厂的offer!
  3. 空跑Python程序
  4. Telnet不是内部或外部命令解决办法
  5. 基于JAVA实现的排序算法总结
  6. python数据结构算法 北京大学_北京大学公开课《数据结构与算法Python版》
  7. 收藏 | 有没有什么可以节省大量时间的 Deep Learning 效率神器?
  8. linux多线程学习(一)
  9. C#强制关闭Excel进程(通过COM使用Excel时)
  10. JQuery获取和设置Select选项常用方法总结 (转)
  11. Ext学习笔记01 - NameSpace,类实例属性,类实例方法,类静态方法
  12. 计算机网络经过了几个阶段,计算机网络的发展经过哪几个阶段?
  13. 使用python打开多台IMAGINGSOURCE工业相机
  14. 《JavaEE黑马》 第一阶段 JavaSE基础 第一章
  15. 电脑设置显示文件扩展名(文件后缀名)
  16. 使用React Native可以开发Window桌面应用了!
  17. 网站制作教程:初学者如何制作网站,有哪些步骤?
  18. 搭建并实现智能DNS
  19. 我的三维mandelbulb制作fractal成长之路[续]
  20. 哪种计算机支持刻录功能,哪种软件更适合刻录CD |用flac刻录CD的方法

热门文章

  1. background-attachment: fixed
  2. 微信公众号开发——模板消息
  3. android chrome html,在桌面chrome中调试android设备中的web页面
  4. 敏捷团队的规范与准则
  5. lammps教程:平均值输出fix ave/time命令详解
  6. python基础-廖雪峰
  7. 更改echarts中盒须图横坐标
  8. 什么是数据流图 Data Flow Diagram (DFD)
  9. 最近火爆的chatgpt,程序员如何使用其进行代码开发
  10. onunload,onbeforeunload,load事件