发明内容
本发明实施例所要解决的技术问题在于,提供一种cocoa框架下窗口显示控制方法及装置,可随意设置窗口显示位置,使窗口位置灵活多变。
为了解决上述技术问题,本发明实施例提供了一种cocoa框架下窗口显示控制方法,包括:
检测到需要进行窗口显示时,调用预设的接口函数;
调用系统默认的设置窗口显示位置的函数;
当所述系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口。
其中,在所述检测到需要进行窗口显示时,调用预设的接口函数的步骤之前,还包括:
预设接口函数,所述接口函数的功能包括:设置所要控制的窗口的显示位置,记录所要控制的窗口的属性,调用系统显示窗口的命令。
其中,所述当所述系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口的步骤,包括:
判断所述接口函数中记录的窗口的属性是否与所述系统默认的设置窗口显示位置的函数所要控制的窗口的属性相同;
若相同,则截取所述系统默认的设置窗口显示位置的函数;
调用系统显示窗口的命令在所述接口函数中设置的所要控制的窗口的显示位置处显示窗口;
初始化所述记录的所要控制的窗口的属性。
其中,所述接口函数中记录的所要控制的窗口的属性包括所要控制的窗口的指针。
其中,还包括:
当所述系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性不同时,通过所述系统默认的设置窗口显示位置的函数,在系统默认的显示位置处显示窗口。
相应地,本发明实施例还提供了一种窗口显示控制装置,包括:接口函数调用模块、默认函数调用模块以及窗口显示控制模块,其中:
所述接口函数调用模块,用于检测到需要进行窗口显示时,调用预设的接口函数;
所述默认函数调用模块,用于调用系统默认的设置窗口显示位置的函数;
所述窗口显示控制模块,用于当所述默认函数调用模块调用的系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述接口函数调用模块调用的预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口。
其中,还包括:
接口函数预置模块,用于预设接口函数,所述接口函数的功能包括:设置所要控制的窗口的显示位置,记录所要控制的窗口的属性,调用系统显示窗口的命令。
其中,所述窗口显示控制模块包括:
判断单元,用于判断所述接口函数预置模块记录的所要控制的窗口的属性与所述默认函数调用模块调用的系统默认的设置窗口显示位置的函数所要控制的窗口的属性是否相同;
截取单元,用于当所述窗口属性判断单元判断结果为相同时,截取所述默认函数调用模块调用的系统默认的设置窗口显示位置的函数;
显示单元,用于调用系统显示窗口的命令在所述接口函数预置模块设置的所要控制的窗口的显示位置处显示窗口;
初始化单元,用于初始化所述接口函数预置模块记录的所要控制的窗口的属性。
其中,所述接口函数预置模块记录的所要控制的窗口的属性包括所要控制的窗口的指针。
其中,还包括:
默认窗口位置显示模块,用于当所述默认函数调用模块调用的系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述接口函数调用模块调用的预设的接口函数中所要控制的窗口的属性不同时,通过所述默认函数调用模块调用的系统默认的设置窗口显示位置的函数,在系统默认的显示位置处显示窗口。
实施本发明实施例,具有如下有益效果:
本发明实施例通过预先设置接口函数,能够预先设置所要控制的窗口的显示位置,预先记录所要控制的窗口的属性,并在系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口,方便用户根据自身需求随意设置窗口显示位置,使得窗口位置灵活多变,提升了用户体验。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,为本发明窗口显示控制装置的第一实施例的结构示意图。如图1所示,所述窗口显示控制装置包括:接口函数调用模块10、默认函数调用模块20以及窗口显示控制模块30,其中:
所述接口函数调用模块10,用于检测到需要进行窗口显示时,调用预设的接口函数;
具体的,在MAC平台下,基于cocoa框架在必要时会打开警示窗口,如:当系统内存不足时需打开警示窗口:请删除一些数据以释放内存空间,所述接口函数调用模块10检测到需要进行窗口显示,则调用预设的接口函数(Application Programming Interface,API)以进行窗口的显示控制。
所述默认函数调用模块20,用于调用系统默认的设置窗口显示位置的函数;
具体的,在需要打开显示警示等窗口时,通过所述默认函数调用模块20调用系统默认的设置窗口显示位置的函数(Set Frame Origin)。
所述窗口显示控制模块30,用于当所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述接口函数调用模块10调用的预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口。
具体的,当所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述接口函数调用模块10调用的预设的接口函数中所要控制的窗口的属性相同时,在进行窗口显示控制时,所述窗口显示控制模块30可通过截取所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数,而通过所述预设的接口函数控制显示窗口。
本发明实施例通过预先设置接口函数,能够在系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口,方便用户根据自身需求随意设置窗口显示位置,使得窗口位置灵活多变,提升了用户体验。
请参见图2,为本发明窗口显示控制装置的第二实施例的结构示意图。所述窗口显示控制装置包括上述的窗口显示控制装置的第一实施例中的接口函数调用模块10、默认函数调用模块20以及窗口显示控制模块30,本实施例中,所述窗口显示控制装置进一步包括:接口函数预置模块00以及默认窗口位置显示模块40,其中:
所述接口函数预置模块00,用于预设接口函数,所述接口函数的功能包括:设置所要控制的窗口的显示位置,记录所要控制的窗口的属性,调用系统显示窗口的命令。
具体的,所述接口函数预置模块00预设的接口函数包括以下功能:设置所要控制的窗口的显示位置,记录所要控制的窗口的属性,调用系统显示窗口的命令。
假设用户希望在屏幕的右上角显示警示窗口,则可通过接口函数将所要控制的窗口的显示位置设置为:屏幕右上角;所要控制的窗口的属性可记录为窗口的指针。
当所述接口函数调用模块10检测到需要进行窗口显示并调用预设的接口函数时,所述接口函数即调用系统显示窗口的命令。如:当系统内存不足时需打开警示窗口:请删除一些数据以释放内存空间,所述接口函数调用模块10检测到需要进行窗口显示,则调用由所述接口函数预置模块00预设的接口函数。
所述默认窗口位置显示模块40,用于当所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述接口函数调用模块10调用的预设的接口函数中所要控制的窗口的属性不同时,通过所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数,在系统默认的显示位置处显示窗口。
具体的,当所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数所要控制的窗口的指针与所述接口函数调用模块10调用的预设的接口函数中所要控制的窗口的指针不同时,所述默认窗口位置显示模块40通过所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数,在系统默认的显示位置处显示窗口。
再请参见图3,为图2中的窗口显示控制模块的实施例的结构示意图;所述窗口显示控制模块30包括:
判断单元301,用于判断所述接口函数预置模块00记录的所要控制的窗口的属性与所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数所要控制的窗口的属性是否相同;
具体的,所述判断单元301判断所述接口函数预置模块00记录的所要控制的窗口的指针与所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数所要控制的窗口的指针是否相同。
截取单元302,用于当所述窗口属性判断单元301判断结果为相同时,截取所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数;
具体的,当所述判断单元301判断所述接口函数预置模块00记录的所要控制的窗口的指针与所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数所要控制的窗口的指针相同时,所述截取单元302截取所述默认函数调用模块20调用的系统默认的设置窗口显示位置的函数。
显示单元303,用于调用系统显示窗口的命令在所述接口函数预置模块00设置的所要控制的窗口的显示位置处显示窗口;
具体的,所述显示单元303调用系统显示窗口的命令,在所述接口函数预置模块00设置的所要控制的窗口的显示位置处显示窗口,即将警示窗口:请删除一些数据以释放内存空间,显示在用户设置的显示位置屏幕右上角处。
初始化单元304,用于初始化所述接口函数预置模块00记录的所要控制的窗口的属性。
具体的,所述初始化单元304,可将所述接口函数预置模块00记录的所要控制的窗口的指针初始化为0。需要说明的是,在本发明实施例中,若没有预先设置接口函数,那么在cocoa框架下,系统既可以直接通过默认函数调用模块20调用系统默认的设置窗口显示位置的函数,也可以通过接口函数调用模块10调用并执行本发明实施例预设的设置窗口显示位置的函数;后者,在后续判断过程中判断结果肯定为否,最终还是在系统默认的窗口显示位置显示窗口,因为没有预先设置接口函数,那么就没有执行记录当前要进行显示的窗口的属性(或参数)的步骤,该当前要进行显示的窗口的属性(或参数)就为0,因此判断结果肯定为否。
本发明实施例通过预先设置接口函数,能够预先设置所要控制的窗口的显示位置,预先记录所要控制的窗口的属性,并在系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口,方便用户根据自身需求随意设置窗口显示位置,使得窗口位置灵活多变,提升了用户体验。
请参见图4,为本发明的窗口显示控制方法的第一实施例的流程图。所述方法包括:
S101,检测到需要进行窗口显示时,调用预设的接口函数。
具体的,在MAC平台下,基于cocoa框架在必要时会打开警示窗口,如:当系统内存不足时需打开警示窗口:请删除一些数据以释放内存空间,所述S101检测到需要进行窗口显示,则调用预设的接口函数,所述接口函数进一步调用系统显示窗口的命令。
S102,调用系统默认的设置窗口显示位置的函数。
具体的,所述接口函数调用系统显示窗口的命令后,所述S102即调用系统默认的设置窗口显示位置的函数。
S103,当所述系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口。
具体的,当所述S102调用的系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述S101调用的预设的接口函数中所要控制的窗口的属性相同时,所述S103通过所述预设的接口函数控制显示窗口。
本发明实施例通过预先设置接口函数,能够在系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口,方便用户根据自身需求随意设置窗口显示位置,使得窗口位置灵活多变,提升了用户体验。
请参见图5,为本发明的窗口显示控制方法的第二实施例的流程图。所述方法包括:
S200,预设接口函数。
S201,检测到需要进行窗口显示时,调用预设的接口函数。
S202,调用系统默认的设置窗口显示位置的函数。
S203,判断所述接口函数中记录的窗口的属性是否与所述系统默认的设置窗口显示位置的函数所要控制的窗口的属性相同。
S204,若相同,则截取所述系统默认的设置窗口显示位置的函数。
S205,调用系统显示窗口的命令在所述接口函数中设置的所要控制的窗口的显示位置处显示窗口。
S206,初始化所述记录的所要控制的窗口的属性。
S207,当所述系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性不同时,通过所述系统默认的设置窗口显示位置的函数,在系统默认的显示位置处显示窗口。
具体地,步骤S206可将记录的所要控制的窗口的指针初始化为0;需要说明的是,在本发明实施例中,若没有预先设置接口函数,那么在cocoa框架下,系统既可以直接调用系统默认的设置窗口显示位置的函数,也可以调用并执行本发明实施例预设的设置窗口显示位置的函数;后者,在后续判断过程中判断结果肯定为否,最终还是在系统默认的窗口显示位置显示窗口,因为没有预先设置接口函数,那么就没有执行记录当前要进行显示的窗口的属性(或参数)的步骤,该当前要进行显示的窗口的属性(或参数)就为0,因此判断结果肯定为否。
通过上述各实施例的描述,本发明实施例通过预先设置接口函数,能够预先设置所要控制的窗口的显示位置,预先记录所要控制的窗口的属性,并在系统默认的设置窗口显示位置的函数所要控制的窗口的属性与所述预设的接口函数中所要控制的窗口的属性相同时,通过所述预设的接口函数控制显示窗口,方便用户根据自身需求随意设置窗口显示位置,使得窗口位置灵活多变,提升了用户体验。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。