时间:2024-05-04
消息框作为计算机向人发送消息的一种方式,一直在Windows系列操作系统中广泛应用。然而,消息框由于种种原因会对人们的操作使用造成干扰。针对当前Windows系统的消息框的界面和执行过程分析,提出相应的改进,以减少消息框占用的面积,减弱对人们使用的干扰。最后用Visual Studio开发工具实现了新的消息框程序。
【关键词】Windows系统 消息框
人机交互方式以发起者来分类主要有2种方式,一种是人向机器主动发起的交互,另一种是机器向人主动发起的交互。自从出现图形化界面一来,消息框用在机器向人发送临时消息的而发起的一种交互方式,在计算机人机交互中大量应用,成为一种主要的方式。
最初,在图形化的pc系统上消息框是用来提示用户操作系统发生的异常和系统的报警,随着Windows系统的发展成熟和互联网的普及在一些常用的软件上消息框还用来向使用者提示后台软件的操作和新闻信息或者带有商业利益的推广信息。
随着消息框使用的增多,尤其是带有商业利益推广信息的彈框式消息框的滥用,凸显出了消息框对人们使用时造成的妨碍效果。因此,引发了人们从法律法规、道德、技术等层面探讨如何消除消息框对人们造成的妨碍。
1 原因分析
分析消息框对人们使用造成妨碍的原因,本文认为主要有以下几点:
(1)消息框显示时是最前窗口的方式显示,如果其显示的位置有人们正在关注的信息或者正在使用的控件,必然会遮挡这些信息和控件。
(2)消息框显示后,通常需要人们进行一些操作才能关闭,因此会打断人们当前的使用。
(3)在商业目的消息框上,由于其设计和使用的目的本身就是传播带商业利益的推广信息,带着这个目的很可能本身就没有考虑对人们使用的妨碍因素。
本文认为第1个和第2个原因是可以通过改良消息框的界面设计来减少对人们正在关注信息或使用控件的遮挡和减弱对人们使用的影响。从而,使人们更好的接受非商业推广用途的消息框。
2 消息框程序设计
目前,在Windows系列操作系统上的消息框,其界面布局通常有以下几个部分组成:
(1)向人们表述消息信息的文字或图片区域;
(2)窗口的外框;
(3)背景填充区域;
(4)操作按钮或其它控件。
消息框实现向人们传递消息的功能主要由文字或图片区域完成,操作按钮或其它控件用于人们对传递过来的消息做出反应,而窗口外框和背景填充区域并无实际作用。因此,如果去掉边框再压缩背景填充区域的面积,则可以大幅减小消息框在显示需要占用的面积,从而减少对人们使用的遮挡。
由于,消息框通常需要人们处理后才能从屏幕上消失,这是打断人们使用的原因。如果让消息框在显示了一段时间后,自动最小化到系统托盘。则既可以减少对人们使用的干扰,又可以避免出现的时间过短导致未阅读完消息框的内容。
3 消息框程序实现
本文采用Visual Studio 2010开发平台用C#语言WPF框架实现了根据上述2改良的消息框。之所以选择用C#语言WPF框架,是因为C#语言作为Microsoft自己开发的编程语言,在Windows系统上运行比JAVA的执行效率要高出很多。C#采用面向对象的编程思想在开发的过程中代码简洁。WPF框架相比Winform框架功能强大很多,减少了控件对系统资源的占用,优化了多线程的处理,对于界面的设计由于WPF框架采用XAML语言实现复杂的界面时只需要简单的文本即可完成。
实现隐藏消息框的外框是通过在Grid控件中的WindowStyle属性设置为None来。代码如下:
Timer类可以实现一个或多个函数延迟指定的时间后执行。这个功能可以用来控制消息框窗口的显示时间,在达到一定的时间后,触发执行函数将消息框最小化到系统托盘。其中Interval属性用来设置延迟的时间。由于Timer类本身是可以循环执行的,所以需要在执行函数里面将Timer的Enable属性设置为false,以避免循环执行的BUG。
C#语言中提供了NotifyIcon类系统托盘的相关功能。Timer的执行函数里面设置将窗口隐藏时同时将系统托盘图标设计为可见即可实现将消息框最小化到系统托盘功能。代码如下:this.Hide(); this.notifyIcon1.Visible=true;
同时还需要在系统托盘中的鼠标点击事件中添加将窗口显示的代码:
this.Visible = true;
this.WindowState =FormWindowState.Normal;
this.notifyIcon1.Visible = false;
对于显示文字信息的消息框,可以根据其需要显示的文字的长度来决定使用多大的消息框。以避免用一个过大的消息框显示较少的内容,从而占用过多的显示面积的问题。
将Windows系统现用的消息框和改良后的消息框比较,以同样大小的字体显示同样的内容时,可以缩小到原来的40%左右。在显示内容时可以在人们没有任何处理的情况下从屏幕上消失,以减少对人们使用的干扰。
4 小结
对Windows系统上运行的以商业推广目的的消息框,因为其使用的目的是从商业利益考虑的,所以本文的研究不能减少这类消息框对人们使用的干扰。而对于合理的用途的消息框,可以采用本文的研究以减少对人们使用时的遮挡带来的影响和操作时的干扰。
参考文献
[1]罗仕鉴.人机界面设计[M].北京:机械工业出版社,2002.
[2]网信办:会同多部门联合启动“整治网络弹窗”行动[J].信息安全与通信保密,2014(10):10.
[3]王君知.网络弹窗广告的伦理思考[J].湘南学院学报,2011(06):22-25+50.
[4]董明.如何禁止电脑软件弹窗广告[J].计算机与网络,2015(13):34.
[5]王松.网络不良弹窗的危害及防治[J].法制与社会,2015(14):58-59.
[6]国家网信办等将联合整治网络弹窗[J].青年记者,2014(29):17.
作者简介:
谢元忱(1988-),男,湖南省衡阳市人。现就读于南华大学,硕士研究生。
作者单位
南华大学 湖南省衡阳市 421000
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!