FROM: http://blog.csdn.net/seamanjiang/archive/2005/10/16/504855.aspx
have wrote a notification bubble with text input control for user to input there email.(MFC)
Code:
|
#define
IDS_DEFAULTHTMLMESSAGE _T("<html><body><form id='ads'
name='ads' action=''><p> pls input your email <input
type='text' name='email'><input type='button' name='cmd:10'
value='Ok' ></p></form></body></html>");
pndAdd = (SHNOTIFICATIONDATA*)malloc(sizeof(SHNOTIFICATIONDATA));
pndAdd->dwID = 4711;
pndAdd->clsid = guidPPCAlertsApp;
pndAdd->npPriority = SHNP_INFORM;
pndAdd->csDuration = 20;
pndAdd->hwndSink = this->m_hWnd
pndAdd->pszHTML = IDS_DEFAULTHTMLMESSAGE;
pndAdd->hicon = m_hNotifactionIcon;
pndAdd->cbStruct = sizeof(SHNOTIFICATIONDATA);
pndAdd->pszTitle = IDS_DEFAULTTITLE;
pndAdd->grfFlags = SHNF_FORCEMESSAGE;
SHNotificationAdd(pndAdd);
........
|
as
we known, we use WM_COMMAND to handle Command Button Click,but when we
got the click, how should i do for getting the text that user input in
the html control?
Code:
|
BOOL CPOutlookTestDlg::OnCommand(WPARAM wParam, LPARAM lParam)
{
if(wParam==10){
SHNotificationRemove(&guidPPCAlertsApp, 4711);
delete pndAdd;
return true;
}
return CPOutlookTestDlg::OnCommand(wParam,lParam);
}
|
thanks.
seaman
When
you call SHNotificationAdd the call is asynchronous and the return
value indicates if the notification was successfully added.
To receive return values from the notification bubble itself there are several ways.
1. Most bubbles have buttons, as in the example:
<input type=button name='cmd:10' value='Ok'>
In this case when the user clicks the 'OK' button your sink window will receive a WM_COMMAND with a wParam of 10
2. Bubbles may also contain links which will send you a WM_COMMAND as well - from the example:
<a href=\"cmd:11\">Test Link</a>
3.
Finally you can have a form in your HTML and have it submitted back to
your sink window. The msdn example doesn't appear to show this properly
but here's an example:
<form method='get'
action='TestBubble://Test'><table width=100% cellspacing=0
cellpadding=0><tr><td colspan=2><b>Choose a
fruit:</b><p><input type='radio' value='0' id='Apples'
checked name='Fruit'><label
for='Apples'>Apples</label><br><input type='radio'
value='1' id='Oranges' name='Fruit'><label
for='Oranges'>Oranges</label></p></td><td><input
type='submit' value='Submit'
name='Submit'></td></tr><tr><td
width=42%%><a
href='cmd:12288'>Settings</a></td></tr></table></form>"
When the submit button is pressed your sink window will receive a WM_NOTIFY with a NMSHN structure:
typedef struct _NMSHN
{
NMHDR hdr;
LPARAM lParam;
DWORD dwReturn;
union
{
LPCTSTR pszLink;
BOOL fTimeout;
POINT pt;
};
} NMSHN;
typedef struct tagNMHDR
{
HWND hwndFrom;
UINT idFrom;
UINT code; // NM_ code
} NMHDR;
typedef NMHDR FAR * LPNMHDR;
The
hdr.code member will be SHNN_LINKSEL; the pszLink member will contain
the URL encoded form submission - eg "TestBubble://Test?Fruit=Apples"
and wParam will contain the dwID of the notification (useful if you
have multiple notifications of the same type)
Tim
分享到:
相关推荐
While labeled data is expensive to prepare, ever increasing amounts of unlabeled data is becoming widely available. In order to adapt to this phenomenon, several semi-supervised learning (SSL) ...
upfc baesd on P-Q control
利用对比大量词语对的方法,List-Based转移算法可以获取这些词语的语义关系,且同时还具有较小的时间复杂度,再结合改进的JAMR对齐器和Oracle分析器,最终提出了基于List-Baesd转移的语义分析翻译系统。该翻译系统...
基于EasyX的贪吃蛇小游戏 - C语言
Energy Core ECP5705-V01.pdf
建立基于图形用户界面GUI的学生成绩管理系统,该系统能够实现学生成绩信息的增加、删除、查询(查询某门课所有学生的成绩并显示排名,查询某个学生的各科成绩并显示排名)、课程成绩统计最高分、最低分、平均分、方差、并显示相应的排名;绘制柱状图、条形图、饼状图、正太分布曲线等功能。 通过本实验使学生掌握图形用户界面GUI的操作和设计流程,并通过编写回调函数巩固前期的知识。
高职教育品牌专业申报汇总表.doc
游戏运营数据后台需求表.docx
使用TOP和CASE的查询。写出实现如下查询的SQL语句。 (18) 列出“数据库基础”课程考试成绩前三名的学生的学号、姓名、所在系和考试成绩。 (19) 查询Java考试成绩最低的学生的姓名、所在系和Java成绩。 (20) 查询选修了Java的学生学号、姓名、所在系和成绩,并对所在系进行如下处理: 当所在系为“计算机系”时,显示“CS”; 当所在系为“信息管理系”时,显示“IS”; 当所在系为“通信工程系”时,显示“CO”; 对其他系,均显示“OTHER”。
stable diffusion提示词人物系列,包含提示词和预览图,把提示词复制到stable diffusion里,即可使用。
mobile-armeabi-v7a-release.apk
《计算机网络实验》资料(3).rar
QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。 邮箱:market@qyresearch.com
OCR模型 源代码,解决网站验证码识别问题,内容包含项目工程源代码,python技术开发,源代码供大家共享
基于stm32的毕业设计
通过操作系统教学网站的建设,完成了对于操作系统课程的远程化授课。可以使学生不受时间空间的限制,通过网络对于这门课程进行学习。建立起了基于B/C的网络化教学系统。本网站采用当前最流行的JSP网络编程技术,可以实现数据的高效、动态、交互访问,具有强大的Server/Client交互能力。本文中所做的主要工作:介绍Win2000 +JSP(J2DK+TOMCAT)系统并且嵌入 JAVABEAN的一般原理;阐述整个操作系统教学网站的概要设计,系统结构及工作原理;分析了系统实现中的特殊性、难点和重点;详细设计实现学院介绍、教学资源、课程表、课堂教学、在线答疑、其他课程、课件下载、留言反馈、站内搜索、公告专栏、友情链接、校园风景、新闻中心、栏目导航等程序模块; 各个模块的具体实现,且分析并解决实现中的若干技术问题;建立完整的实验网站,进行测试并分析结果。 关键字 : JAVABEAN JSP 网络教学 JAVASCRIPT JDBC
NX二次开发uf5341 函数介绍,Ufun提供了一系列丰富的 API 函数,可以帮助用户实现自动化、定制化和扩展 NX 软件的功能。无论您是从事机械设计、制造、模具设计、逆向工程、CAE 分析等领域的专业人士,还是希望提高工作效率的普通用户,NX 二次开发 Ufun 都可以帮助您实现更高效的工作流程。函数覆盖了 NX 软件的各个方面,包括但不限于建模、装配、制图、编程、仿真等。这些 API 函数可以帮助用户轻松地实现自动化、定制化和扩展 NX 软件的功能。例如,用户可以通过 Ufun 编写脚本,自动化完成重复性的设计任务,提高设计效率;或者开发定制化的功能,满足特定的业务需求。语法简单易懂,易于学习和使用。用户可以快速上手并开发出符合自己需求的 NX 功能。本资源内容 提供了丰富的中英文帮助文档,可以帮助用户快速了解和使用 Ufun 的功能。用户可以通过资源中的提示,学习如何使用 Ufun 的 API 函数,以及如何实现特定的功能。
医保信息平台定点医药机构国家标准接口技术文档V5.2 医保平台接口文档,开发必备,全语言接口
VB医疗纠纷检索系统设计(源代码+系统)【VB】
Threejs插件墙体挖洞ThreeBSP.js