1.一种在屏幕上产生透明界面的方法,它包括:
在计算机屏幕上产生文本输入用户界面;
在所述计算机屏幕上产生透明键盘界面,所述界面包括按键图 像;
在所述文本输入用户界面上覆盖所述透明键盘界面;
使用户能够采用所述透明键盘界面在所述文本输入用户界面单 元中输入数据;
响应用户对用户可选的专用图形用户界面的激活,在所述透明键 盘界面与一个物理键盘之间改变焦点;以及
当焦点位于所述透明键盘界面时,识别通过所述透明键盘界面进 行的按键选择,并且当焦点位于所述物理键盘上时,识别通过所述物 理键盘进行的按键选择。
2.如权利要求1所述的方法,其特征在于,所述方法包括在所述 计算机屏幕上产生文本显示并且在所述文本显示上覆盖所述透明键盘 界面。
3.如权利要求1所述的方法,其特征在于,识别按键选择包括识 别与触摸屏的接触。
4.如权利要求1所述的方法,其特征在于,识别按键选择包括识 别与所述透明键盘界面相关的按键图像的指示器选择。
5.如权利要求1所述的方法,其特征在于,所述方法包括选择性 地使信息能够通过所述透明键盘界面或其它界面输入。
6.如权利要求5所述的方法,其特征在于,所述方法包括提供用 户可选单元,使用户能够选择是通过所述透明键盘界面还是通过其它 界面输入数据。
7.一种在屏幕上产生透明界面的系统,它包括:
基于处理器的装置;以及
与所述基于处理器的装置相连的存储装置,所述存储装置存储一 些指令,这些指令使所述基于处理器的装置能够在计算机屏幕上产生 文本输入用户界面,在所述计算机屏幕上产生包括按键图像的透明键 盘界面,识别所述文本输入用户界面或所述透明键盘界面的用户选 择,响应所述用户激活用户可选的专用图形用户界面而在所述透明键 盘界面和一个物理键盘之间改变焦点,以及当焦点位于所述透明键盘 界面上时,识别通过所述透明键盘界面进行的按键选择,并且当焦点 位于所述物理键盘上时,识别通过所述物理键盘进行的按键选择。
8.如权利要求7所述的系统,其特征在于包括显示屏。
9.如权利要求8所述的系统,其特征在于包括与所述基于处理器 的装置相连的指示器。
技术领域\n本发明大体上涉及基于处理器的系统所用的显示装置。\n背景技术\n很多基于处理器的系统具有相对有限的输入/输出功能。例如, 一些手持计算机系统不具有相关的键盘。举例来说,文本输入可采 用触摸屏来进行。用户可用指示笔或手指来触摸各按键的适当区域, 从而通过屏幕键盘来输入数据。\n一些包括因特网输入板和个人数字助理(PDA)的其它手持计算机 装置可能需要有更好的方式来方便数据的输入。设置屏幕专用键盘 会占用过多的可用显示空间。尤其是由于在一些场合下无需进行数 据输入,因此可能因容纳键盘而损失一部分显示空间。\n用户可能希望在对话框或网页栏中输入数据。因此,用户希望 能同时看到对话框和键盘。由于显示屏受到许多限制,因此这是不 可行的。例如,显示空间不足以实现通过屏幕键盘进行数据输入以 及清楚地显示可用信息。\n许多装置包括尺寸充分缩小的键盘,使得完成文本信息的数据 输入有些困难。在这些情况下,同样也希望有更好的方式来将文本 数据输入到基于处理器的系统中。\n因此,一直存在着对不用物理键盘就能方便地进行数据输入的 更佳方式的需求。\n发明内容\n本发明提供了一种在屏幕上产生透明界面的方法,它包括:在 计算机屏幕上产生文本输入用户界面;在所述计算机屏幕上产生透 明键盘界面,所述界面包括按键图像;在所述文本输入用户界面上 覆盖所述透明键盘界面;使用户能够采用所述透明键盘界面在所述 文本输入用户界面单元中输入数据;响应用户对用户可选的专用图 形用户界面的激活,在所述透明键盘界面与一个物理键盘之间改变 焦点;以及当焦点位于所述透明键盘界面时,识别通过所述透明键 盘界面进行的按键选择,并且当焦点位于所述物理键盘上时,识别 通过所述物理键盘进行的按键选择。\n本发明还提供了一种在屏幕上产生透明界面的系统,它包括: 基于处理器的装置;以及与所述基于处理器的装置相连的存储装置, 所述存储装置存储一些指令,这些指令使所述基于处理器的装置能 够在计算机屏幕上产生文本输入用户界面,在所述计算机屏幕上产 生包括按键图像的透明键盘界面,识别所述文本输入用户界面或所 述透明键盘界面的用户选择,响应所述用户激活用户可选的专用图 形用户界面而在所述透明键盘界面和一个物理键盘之间改变焦点, 以及当焦点位于所述透明键盘界面上时,识别通过所述透明键盘界 面进行的按键选择,并且当焦点位于所述物理键盘上时,识别通过 所述物理键盘进行的按键选择。\n附图说明\n图1是根据本发明的一个实施例的屏幕显示的描述;\n图2是说明能够用根据本发明实施例的透明方法来操作的样本 系统的示意图;\n图3是根据本发明实施例的用于实现透明图示的软件和硬件栈 的示意图;\n图4是根据本发明一个实施例的用于提供透明图示的缓冲器的 示意图;\n图4A是根据本发明一个实施例的像素混合设置的示意性描述;\n图5是根据本发明一个实施例、将系统初始化以提供透明图示 的流程图;\n图6是表示根据本发明一个实施例的双重缓冲控制处理的流程 图;以及\n图7是根据本发明一个实施例的颜色混合和交织处理的流程图。 详细描述\n如图1所示,显示器500可与基于处理器的系统、如因特网输 入板、个人数字助理、手持的基于处理器的系统或任何其它的基于 处理器的系统相联系。在所示实施例中,图形用户界面502是显示 了与因特网网站相关的网页504的浏览器显示。在这种情况下,因 特网网站提供了由用户完成的多个文本输入框506。\n透明键盘界面508看上去如同重叠在网页504上一样。界面508 以虚线表示,以便表示相对透明的显示,这种显示使用户不仅能看 到按键图像510和写在按键图像510上的标记512,还能“透过”按 键图像510有效地看到俨然在下方的文本和图形。结果,用户可以 读取与文本输入框506有关的信息,同时用户选择按键图像510以 在透明键盘界面508上输入数据。“透明”是指文本或图形可在“透 明”文本或图形下方或通过“透明”文本或图形而被看见的能力。\n在本发明的一些实施例中,显示器500可以是触摸屏显示器。 在另一实施例中,可采用传统的显示器、如液晶显示器,其中采用 鼠标来选择特定的按键图像510以进行文本输入。作为另一选择, 可采用声音输入功能来使按键能通过声音选择。\n因此,用户可以通过选择透明按键图像510以使文本被输入到 所选的数据输入框506中,从而选择性地输入数据。在本发明的一 些实施例中,界面502可选择性地设置成键盘模式或非键盘模式。 在键盘模式下,选择任一按键图像510使文本被输入到文本输入框506 中。在非键盘模式下,按键图像510是无效的,举例来说,用户可 选择一个文本输入框506以用于文本输入。这即使在界面508看上 去覆盖了相关的文本输入框506时也可进行。这样,举例来说,基 于处理器的系统的焦点可设置在键盘界面508或文本输入框506上。 在本发明的一个实施例中,可通过采用指示器、如鼠标或指示笔来 选择适当的图标514,从而进行模式选择。在另一实施例中,可采用 硬件按钮来改变焦点。\n通过混合操作,可以将表示两个相对有差别的屏幕图像、如键 盘界面508和文本输入框506的信号以电子方式混合,从而使其看 上去象是一个屏幕图像重叠在另一屏幕图像上。实际上,图像并不 重叠在另一图像的上方或下方。相反,可将第一图像和第二图像的 电子表示混合起来以给用户一层重叠在另一层上的印象,因为用户 认为他是透过一个图像而看到另一图像的。\n给定图像、如键盘界面508或文本输入框506的透明度是可动 态地变化的。例如,如果用户在一段预定时间后未能使用键盘界面508 输入文本,那么键盘界面508的透明度可增大,同时文本输入框506 的透明度可降低。结果,焦点看上去变到文本输入框506上,文本 输入框506看起来更醒目并比键盘界面508更显眼。因此,在各种 各样的环境下,可通过调节两个不同图像表示的相对混合来实现透 明度的自动的动态变化。\n操作系统输出帧缓冲区是用于存储计算机系统的当前显示数据 的存储区域。操作系统输出帧缓冲区可分配在操作系统可用的任何 存储器中。帧缓冲区是存储了像素数据的二维阵列的一组存储单元。 操作系统输出帧缓冲区可与计算机系统的操作系统软件相关,此软 件控制计算机监视器上的数据信号的产生和显示。\n透明帧缓冲区是用于存储如图1所示的透明键盘界面508的显 示数据的存储器区域,用于与同一页面上的文本或图形504的其它 传统的非透明的显示数据信号基本上同时地显示。传统的文本和图 形来自操作系统输出帧缓冲区。透明帧缓冲区可分配在系统中可用 的任何存储器中。\n在一些实施例中,操作系统输出帧缓冲区和透明帧缓冲区的显 示分量可通过对各缓冲区的相应像素进行颜色混合而相结合,同时 使颜色混合操作所得的像素与操作系统输出帧缓冲区的像素交织, 从而形成可见显示帧缓冲区的显示分量。\n根据本发明的实施例,用于产生透明效果的方法采用了显示内 容的简化混合。相反,它可依靠人眼无法区分计算机监视器上相邻 像素的颜色的事实(实质上,人眼将各像素与其相邻像素取平均)。采 用一定程度的混合,因为较大的计算机监视器和较低的显示分辨率 在以这种方式使像素交织时会导致“棋盘”效果。\n在一个实施例中,在将两个帧缓冲区的像素交织到其中数据当 前在显示屏上可见的显示缓冲区中时,对第一帧缓冲区(如操作系统 输出帧缓冲区)的一半像素与第二帧缓冲区(如透明帧缓冲区)的一半 像素取平均值。通过对一部分像素取平均值,在提供透明效果时可 减小所用的处理能力。在另一实施例中,可以对不同百分比的像素(例 如四分之一的像素、八分之一的像素、十六分之一的像素、三十二 分之一的像素或者任何N分之一的像素,其中N为正整数)进行平均, 并且百分比可以动态地变化。\n图2是说明能够用根据本发明产生透明显示的方法来操作的样 本系统的示意图。样本系统100例如可用于执行这里所述方法所用 的处理。样本系统100表示基于可从Intel Corporation买到的 PENTIUM、PENTIUMPro和PENTIUMII微处理器的计算机系 统,然而也可采用其它的系统。样本系统100包括通过处理器总线105 相互连接的微处理器102和高速缓冲存储器104。样本系统100还包 括第一I/O总线108和第二I/O总线118。处理器总线105和第一I/O 总线108可通过主机桥接器106来桥接,而第一I/O总线108和第二 I/O总线118可通过I/O总线桥接器110来桥接。在第一I/O总线108 上可连接主存储器112和视频存储器114。在视频存储器114上可连 接视频显示器116。在第二I/O总线118上可连接大容量存储器120、 鼠标或其它指示器122。\n大容量存储器120可用于为根据本发明实施例的提供透明键盘 界面的方法所用的可执行指令提供长期的存储,而主存储器112可 用于在微处理器102的执行期间、短期地存储根据本发明实施例的 提供透明显示的方法的可执行指令。另外,指令可存储在系统可访 问的诸如小型光盘只读存储器(CD-ROM)、数字通用盘(DVD)和软盘 等其它机器可读媒体中。\n图3是根据本发明一个实施例的用于实现透明图示的软件和硬 件栈的示意图。应用程序200可专门设计,以便采用由透明支持软 件202提供的透明显示对象调用功能来定义和更新透明显示对象。 也就是说,可将对这种功能的一些调用编写到应用程序中,以便使 用透明显示特征。屏幕上的透明键盘界面应用是这种应用程序的一 个例子。\n在此实施例中,作为响应,透明支持软件202调用操作系统图 形绘制应用编程接口(图形API)204。例如在Windows 95和Windows 98操作系统中,这可以是图形设备接口(GDI)。在此实施例中,透明 支持软件202还调用操作系统的视频硬件控制抽象应用编程接口(视 频控制API)206。在Windows 95和Windows 98操作系统中,它可 以是可从Microsoft Corporation得到的DirectDraw API。在一些操作 系统中,由于图形API 204和视频控制API 206可能都在相同的应用 编程接口中,所以它们可能无法相互区分。\n图形API 204可用于将所请求的图形送到透明图形帧缓冲区18 中。视频控制API 206可用于控制帧缓冲区的可见性并存取所有帧缓 冲区中的内容。在此实施例中,图形API 204和视频控制API 206可 与显示驱动软件208相互作用,从而与视频卡210进行通信。视频 卡210控制图2的系统中的视频显示器。视频卡210访问视频存储 器114以得到显示数据。\n通常,通过在视频存储器114中建立像素数据的帧缓冲区,可 以在如液晶显示器(LCD)等显示器上显示图像。此帧缓冲区可被视频 控制API 206指定为视频存储器的可见部分。如果存在着足够多的可 用视频存储容量,则可以定义多个帧缓冲区,一次只能使用其中的 一个缓冲区(由视频卡210使用)以得到用于建立当前可见显示的数据 信号。\n在众所周知的双重缓冲技术中,第一帧缓冲区被视为“可见” 缓冲区,视频卡210从中读取数据信号以得到当前的显示数据信号, 同时在第二帧缓冲区(或“不可见”缓冲区)中写入新的显示数据。在 此实施例中,随后调用视频控制API,并通过指定第二帧缓冲区为可 见缓冲区并且指定第一帧缓冲区为不可见缓冲区来“交换”帧缓冲 区。采用这项技术提供了显示数据的平滑更新,使得用户可得到在 美学上令人愉悦的显示。本发明的实施例可将此概念扩展到采用额 外的帧缓冲区来提供与正常显示数据相结合的透明显示数据信号。\n图4是说明用于提供透明图示的多个帧缓冲区的实施例的示意 图。每次可将视频存储器114的一个指定部分指定为在计算机监视 器上显示成可见的。这称为“可见显示”。也就是说,可见显示包 括来自视频存储器114中当前显示给用户观看的区域中的显示数据。 通常,在此实施例中,操作系统软件的图形API 204采用显示驱动器 208和/或视频控制API 206将数据信号写入操作系统输出帧缓冲区 10。在大多数当前的系统中,驻留在视频存储器114中的操作系统 输出帧缓冲区10用于可见显示。然而,在本发明的实施例中,可采 用其它帧缓冲区作为可见显示。\n根据本发明的实施例,驻留在视频存储器114或其它可存取的 存储器中的第一工作帧缓冲区300和第二工作帧缓冲区302存储了 显示数据。在此实施例中,各帧缓冲区300或302存储了像素数据 信号的阵列。在一个实施例中,各像素可包括红(R)、绿(G)、蓝(B) 以及可选择的不透明度(A)分量。或者,也可采用其它彩色空间、如 YUV或YUVA。在此实施例中驻留在主存储器112中的透明帧缓冲 区18存储了由透明支持软件202、视频控制API 206和图形API 204 所创建的透明显示数据。\n在一个实施例中,来自透明帧缓冲区18的数据信号可与来自操 作系统输出帧缓冲区10的数据信号进行颜色混合与交织,然后存储 到工作帧缓冲区302中。当工作帧缓冲区302处于“不可见”状态(即 在此实施例中存储在帧缓冲区中的数据当前未被显示)时,此混合与 交织后的数据可存储到工作帧缓冲区302中。在不可见状态下写入 工作帧缓冲区302的同时,工作帧缓冲区300可处于“可见”状态 并用作当前显示数据源。\n当对工作帧缓冲区302完成了颜色混合和交织操作时,可将不 可见的工作帧缓冲区302指定为可见的工作帧缓冲区,反之亦然。 在一个实施例中,这种双重缓冲处理可以每秒超过五次的速率重复 进行,从而为用户提供视觉上吸引人的显示。\n在本发明的实施例中,透明帧缓冲区18和操作系统输出帧缓冲 区10的像素交织可如下完成。在一个实施例中,在所选工作帧缓冲 区302中的交替像素可通过透明帧缓冲区18的像素值和空间上对应 的操作系统输出帧缓冲区10的像素值的混合来写入。在所选工作帧 缓冲区302中的其它像素可用来自操作系统输出帧缓冲区10的像素 写入。\n图4A是在本发明一个实施例中的像素混合设置的示意性描述。 部分312表示工作帧缓冲区,块310和311表示所述帧缓冲区内的 特定像素。在交替像素在透明帧缓冲区18和操作系统输出帧缓冲区 10之间混合的方法的一个实施例中,所选工作帧缓冲区中的“T+OS 混合”像素311包括来自透明帧缓冲区18的像素(T值)和来自操作 系统输出帧缓冲区10的像素(OS值)的颜色平均混合。所选工作帧缓 冲区302中的“OS”像素310包含从操作系统输出帧缓冲区10中复 制的空间对应的像素。因此,如图4A所示,T+OS像素中散布着OS 像素,从而实现了所需的透明效果。\n在此实施例中,通过对两个帧缓冲区18和10内的对应位置的 各像素的各颜色分量采取加权平均方案来进行颜色平均,然而在其 它实施例中,也可采用不同的颜色混合技术。在一个实施例中,加 权平均可通过将第一像素的分量值乘以加权值并将第二像素的相同 分量值乘以不同加权值来实现。然后将两个加权的颜色分量加在一 起,并将所得的和除以所述两个加权值之和。这种方法也称为α混 合。\n图5是软件399的流程图,说明用于初始化系统以提供透明图 示的实施例。在框400中,可确定操作系统显示输出控制信息。此 控制信息包括显示的大小、颜色分辨率和其它数据。接着,在此实 施例中,在框402中,可在视频存储器114中分配两个工作帧缓冲 区300和302。在此实施例中,这些操作可通过调用视频控制API 206 来进行。在框404中,可进行块传送操作,将来自通常可见的操作 系统输出帧缓冲区10中的数据复制到两个工作帧缓冲区300、302 中所选的一个缓冲区中。假定在此实施例中首先选择工作帧缓冲区 300。在此实施例中,可通过调用视频控制API 206来进行块传送。 在框406中,可通过调用视频控制API 206来将操作系统输出帧缓冲 区10设置成“不可见”状态。在此实施例中,在框408中,所选的 工作帧缓冲区300可通过调用视频控制API 206来变成可见的(框 408)。在一些实施例中,框406和408可通过对视频控制API的单次 调用来完成。在这时,从所选的工作帧缓冲区300而不是从操作系 统输出帧缓冲区10中得到视频卡的当前显示输出数据。\n图6是表示双重缓冲软件410的一个实施例的流程图。在此实 施例中,可在框412中进行块传送操作,通过对视频控制API 206的 调用,将操作系统输出帧缓冲区10复制到不可见的第二工作帧缓冲 区302。在框414中,可进行操作,将不可见的第二工作帧缓冲区302 和透明帧缓冲区18的混合和交织内容写入第二工作帧缓冲区302。 在框416中,使第二工作帧缓冲区302可见而使第一工作帧缓冲区300 不可见,实际上,交换作为当前显示输出数据源的两个帧缓冲区。\n在此实施例中,在框418中,可进行块传送操作,通过对视频 控制API 206的调用,将操作系统输出帧缓冲区10复制到不可见的 第一工作帧缓冲区300。在框420中,可进行操作以将第一工作帧缓 冲区300和透明帧缓冲区18的颜色混合和交织后的内容写入第一工 作帧缓冲区300。在框422中,使第一工作帧缓冲区300可见而使第 二工作帧缓冲区302不可见,实际上,就是交换作为当前显示输出 数据源的两个帧缓冲区。此过程可通过返回到框412来重复。在各 个先前框中,操作系统软件可同时将附加显示数据写入操作系统输 出帧缓冲区中。\n参考图7进一步描述框414和420的颜色混合和交织操作。在 框426中,可将当前不可见(第一或第二)工作帧缓冲区中的存储单元 确定为透明图形帧缓冲区的基准点。在框428中,可以读取用于当 前不可见的工作帧缓冲区中像素的数据信号值,并且可确定透明图 形帧缓冲区中的空间上对应的像素。由于透明图形帧缓冲区的图像 可能被拉伸或缩小以符合工作帧缓冲区的一部分,因此这种对应关 系并不一定是1∶1的比率。这种像素对应关系的确定在本领域中是众 所周知的,常用于操作系统软件中的拉伸块传送(例如Windows 95 操作系统中的StretchBit功能)。\n接着,在框430中,在此实施例中,可计算来自工作帧缓冲区 的像素和来自透明图形帧缓冲区的像素的加权平均值。可在颜色分 量的基础上在一个颜色分量上确定各个像素分量的加权平均值。也 就是说,可对红色分量进行平均,可对蓝色分量进行平均,可对绿 色分量进行平均。为各分量给定的权确定了像素的所得透明度,但 是可对给定像素的所有分量采用相同的加权值。与像素相关的权至 少部分地影响透明度的等级。这些权可由采用透明度的应用程序来 操纵以实现各种混合比率。此外,采用了透明度的应用程序可提供 一种用户界面单元,允许用户直接或间接地控制混合比率。\n在框432中,在处理当前像素时,可将加权平均计算的结果放 置在工作帧缓冲区中的同一存储单元。在框434中,考虑到当前的 交织模式(例如采用每两个像素、每四个像素、水平或垂直交替行等), 可以确定要处理的工作帧缓冲区中的下一存储单元。在菱形框436 中,如果要处理工作帧缓冲区和透明图形帧缓冲区中的更多像素, 则对下一像素继续从框428进行处理。否则,结束颜色混合和交织 处理。\n虽然本发明就有限数量的实施例进行了描述,但是本领域的技 术人员会从中认识到大量的修改和变化。所附的权利要求书意在涵 盖属于本发明的精神实质和范围内的所有这些修改和变化。
法律信息
- 2021-10-26
专利权有效期届满
IPC(主分类): G06F 3/033
专利号: ZL 01818103.1
申请日: 2001.10.09
授权公告日: 2006.08.02
- 2006-08-02
- 2004-08-25
- 2004-06-16
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |