相信大家在使用窗体程序时一定用过按F1跳出帮助文档的功能,或者是窗体标题有个问号,点击之后指向不同的地方会有不同的提示信息。这些功能都是程序变得友好,我们在自己的项目中也是可以做到的。
1. 添加提示信息
新建个窗体项目,项目名称为WinFormUI,解决方案名称为WinFormWithHelpDoc。删除默认创建的Form1,新建窗体MainForm,设置相关属性。我们要完成的效果是这样:
我们可以看到不同于常看到的窗体,它没有最大化、最小化按钮,而是多了个帮助按钮,怎样做出这样的窗体呢?
很简单,在窗体的属性中将HelpButton设置为true(这里说个小技巧,有选项的属性,双击属性名称即可改为下一个属性,而不用在后面选择),并且将MaximizeBox和MinimizeBox设置为false。
下面,我们再添加一个Label名为lblMessageTip、一个TextBox名为txtMessage、一个HelpProvider名为hpMainForm(该控件可为窗体提供提示信息或联机帮助):
双击窗体标题栏,在Load事件中写入Label和TextBox的提示信息:
hpMainForm.SetHelpString(lblMessageTip, "Here is the message." ); |
hpMainForm.SetHelpString(txtMessage, "Enter something here." ); |
运行窗体,按下标题栏的帮助按钮,再点击两个控件,可以看到提示信息。
2. 添加帮助文档
先找个后缀是chm的帮助文档,我这里就用Python的参考文档代替了 :D,将它放在项目的bin\Debug下:
在Load事件中加入两行代码:
hpMainForm.HelpNamespace = Application.StartupPath + @"\Python 语言参考手册Python Reference Manual.chm" ; |
hpMainForm.SetShowHelp( this , true ); |
设置HelpProvider所对应的帮助文档,并设置在窗体中按下F1时打开帮助文档。
再次运行,按下F1,我们看到帮助文档跳出来了 :D
下面,再加入菜单栏,当单击帮助项时弹出帮助文档,添加菜单栏控件msMain:
并在菜单栏的快捷任务中选择“插入标准项”,快速添加菜单:
双击“帮助”下的“内容”,在其单击事件中写入如下代码:
Process.Start(Application.StartupPath + @"\Python 语言参考手册Python Reference Manual.chm" ); |
用进程启动帮助文档,再次运行,点击“内容”,同样打开了帮助文档。
点击这里下载上面的示例,名称为WinFormWithHelpDoc,用VS2005创建。
作者:Ju2ender
出处:http://ju2ender.cnblogs.com/
本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。